/** * Event Emission Plugin for Zapier SDK * * Provides silent telemetry event emission capability to the SDK. * All events are emitted asynchronously and failures are silently handled. */ import type { BaseSdkOptions } from "../../types/sdk"; import type { BaseEvent } from "../../types/telemetry-events"; import type { EventTransport, TransportConfig } from "./transport"; import type { MethodCalledEventData } from "./types"; /** * Removes all registered process event listeners. * Useful for test cleanup to prevent listener accumulation. */ export declare function cleanupEventListeners(): void; export interface EventEmissionConfig { enabled?: boolean; transport?: TransportConfig; callContext?: "sdk" | "cli" | "mcp"; } export interface EventEmissionContext { eventEmission: { transport: EventTransport; config: EventEmissionConfig; emit(subject: string, event: T): void; createBaseEvent(): Promise; emitMethodCalled(data: MethodCalledEventData): void; flush(): Promise; close(exitCode?: number): Promise; }; } export declare const eventEmissionPlugin: (sdk: { context: { options?: BaseSdkOptions; }; } & { context: { meta: Record; }; }) => { context: EventEmissionContext; }; export type EventEmissionProvides = ReturnType; export type { EventContext, ApplicationLifecycleEventData, EnhancedErrorEventData, MethodCalledEventData, } from "./types"; export { buildApplicationLifecycleEvent, buildErrorEventWithContext, buildErrorEvent, createBaseEvent, buildMethodCalledEvent, } from "./builders"; export type { BaseEvent, MethodCalledEvent, } from "../../types/telemetry-events"; export * from "./utils"; //# sourceMappingURL=index.d.ts.map