1.1.3 • Published 6 months ago

@types/node-insights v1.1.3

Weekly downloads
21
License
MIT
Repository
github
Last release
6 months ago

Installation

npm install --save @types/node-insights

Summary

This package contains type definitions for node-insights (https://github.com/flightstats/node-insights#readme).

Details

Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node-insights.

index.d.ts

// Type definitions for node-insights 1.1
// Project: https://github.com/flightstats/node-insights#readme
// Definitions by: Walter Rumsby <https://github.com/wrumsby>
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
// TypeScript Version: 2.2

interface Config {
    insertKey: string;
    queryKey: string;
    accountId: string;
    timerInterval?: number | undefined;
    maxPending?: number | undefined;
    defaultEventType?: string | undefined;
    enabled?: boolean | undefined;
    gzip?: boolean | undefined;
}

type CallbackFunc = (err: Error | null | undefined, responseBody: string) => void;

declare class Insights {
    static collectorHost: string;
    static collectorBaseURL: string;
    static queryBaseURL: string;

    enabled: boolean;
    queryKey: string;
    insertKey: string;

    /**
     * Insights
     */
    constructor(config: Config);

    /**
     * Add insights data to the queue.
     * It is sent when the queue reaches a max size or a period of time has elapsed
     */
    add(data: object, eventType?: string): void;

    /**
     * Build a nrql query string
     * @example
     *    nrql = insights.nrql({
     *      select: 'uniqueCount(session)',
     *      from: 'PageView',
     *      since: '1 week ago',
     *      until: '1 day ago',
     *      timeseries: '1 hour'
     *   });
     *   insights.query(nrql);
     */
    nrql(params: object): string;

    /**
     * nrql where clause builder
     */
    where(clause: string | string[] | object): string;

    /**
     * Execute a nrql query
     */
    query(query: string, callback: CallbackFunc): void;

    /**
     * Start the timer that will send insights after some interval of time
     * this is called implicitly when data is added via the add method
     */
    start(): void;

    /**
     * Stop the timer that will send insights after some interval of time
     * this is called implicitly when the amount of data exceeds maxPending and the queue is sent
     */
    stop(): void;

    /**
     * Stop the timer after flushing.
     */
    finish(): void;

    /**
     * Send accumulated insights data to new relic (if enabled)
     */
    send(done?: CallbackFunc): void;
}

export = Insights;

Additional Details

  • Last updated: Thu, 08 Jul 2021 18:51:21 GMT
  • Dependencies: none
  • Global values: none

Credits

These definitions were written by Walter Rumsby.

1.1.3

6 months ago

1.1.2

7 months ago

1.1.1

3 years ago

1.1.0

5 years ago