import AbstractTelemetryEventsDelegate from "./AbstractTelemetryEventsDelegate"; import { ProgrammabilityEvent, ProgrammabilityEventCallType } from "./ProgrammabilityEvents.definitions"; interface FormattedProgrammabilityEvent { plugin: string; plugin_version?: string; call_type: ProgrammabilityEventCallType; name: string; command: string; listenee?: string; options_map?: Record; } export declare class ProgrammabilityEventsDelegate extends AbstractTelemetryEventsDelegate { currentPlugin: string | undefined; currentPluginVersion: string | undefined; events: FormattedProgrammabilityEvent[]; currentOptions: Record; private eventGroupEnabled; getSchemaName(): string; getEventName(): string; report(event: FormattedProgrammabilityEvent | Array): Promise; /** * A burst of programmability events are fired during initialization, so we withhold them until initialization is * complete in order to minimize network requests. * @private */ stopProgrammabilityGrouping(): void; format(event: ProgrammabilityEvent): FormattedProgrammabilityEvent; } export {};