export interface EventEnvelope<TType extends string, TPayload> {
    readonly type: TType;
    readonly ts: number;
    readonly traceId: string;
    readonly sessionId: string;
    readonly turnId?: string;
    readonly agentId?: string;
    readonly taskId?: string;
    readonly source: string;
    readonly payload: TPayload;
}
export interface EventEnvelopeContext {
    readonly sessionId: string;
    readonly source: string;
    readonly traceId?: string;
    readonly turnId?: string;
    readonly agentId?: string;
    readonly taskId?: string;
}
export declare function createEventEnvelope<TType extends string, TPayload>(type: TType, payload: TPayload, context: EventEnvelopeContext): EventEnvelope<TType, TPayload>;
//# sourceMappingURL=event-envelope.d.ts.map