@graphql-yoga/plugin-apollo-usage-report
Version:
Apollo's GraphOS usage report plugin for GraphQL Yoga.
22 lines (21 loc) • 991 B
TypeScript
import { YogaLogger, YogaServer } from 'graphql-yoga';
import { google } from '@apollo/usage-reporting-protobuf';
import type { ApolloUsageReportOptions } from './index';
import { OurReport } from './stats.js';
export declare class Reporter {
private yoga;
private logger;
private reportHeaders;
private options;
private reportsBySchema;
private nextSendAfterDelay?;
private sending;
constructor(options: ApolloUsageReportOptions, yoga: YogaServer<Record<string, unknown>, Record<string, unknown>>, logger: YogaLogger);
addTrace(schemaId: string, options: Parameters<OurReport['addTrace']>[0]): Promise<void> | undefined;
flush(): Promise<PromiseSettledResult<unknown>[]>;
sendReport(schemaId: string): Promise<void>;
private _sendReport;
private getReport;
}
export declare function getEnvVar<T>(name: string, defaultValue?: T): string | T | undefined;
export declare function dateToProtoTimestamp(date: Date): google.protobuf.Timestamp;