@types/node-insights
TypeScript icon, indicating that this package has built-in type declarations

1.1.3 • Public • Published

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

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: Tue, 07 Nov 2023 09:09:39 GMT
  • Dependencies: none

Credits

These definitions were written by Walter Rumsby.

Readme

Keywords

none

Package Sidebar

Install

npm i @types/node-insights

Weekly Downloads

0

Version

1.1.3

License

MIT

Unpacked Size

6.52 kB

Total Files

5

Last publish

Collaborators

  • types