export type DuctapeExecutionKind = 'feature' | 'step' | 'function' | 'primitive'; export interface DuctapeExecutionContext { workspace_id?: string; product_id?: string; product_tag?: string; env?: string; feature_id?: string; feature_tag?: string; feature_run_id?: string; step_tag?: string; step_run_id?: string; step_attempt?: number; function_namespace?: string; function_operation?: string; function_version?: string; function_invocation_id?: string; trace_id: string; span_id: string; parent_span_id?: string; process_id?: string; parent_process_id?: string; session?: string; session_id?: string; session_tag?: string; session_user_id?: string; actor_id?: string; account_id?: string; idempotency_key?: string; deadline_at?: number; baggage?: Record; kind: DuctapeExecutionKind; } export declare function currentExecutionContext(): DuctapeExecutionContext | undefined; export declare function createExecutionContext(fields: Partial, parent?: DuctapeExecutionContext | undefined): DuctapeExecutionContext; export declare function runWithExecutionContext(context: DuctapeExecutionContext, fn: () => T): T; /** Fields safe and useful on processor-result/log records. */ export declare function executionContextFields(context?: DuctapeExecutionContext): Record;