export type CallbackActivityKind = "extension.hook" | "renderer" | "tool.execute" | "tool.prepare" | "workflow.ctx_tool" | "workflow.run" | "workflow.stage_adapter";
export interface CallbackActivity {
    id: string;
    kind: CallbackActivityKind;
    name: string;
    startedAt: number;
    sourcePath?: string;
    toolCallId?: string;
    runId?: string;
    stageId?: string;
}
export interface CallbackActivityReporter {
    started(activity: CallbackActivity): void;
    finished(activityId: string): void;
}
export interface CallbackActivityDescriptor {
    kind: CallbackActivityKind;
    name: string;
    sourcePath?: string;
    toolCallId?: string;
    runId?: string;
    stageId?: string;
}
export declare function setCallbackActivityReporter(next: CallbackActivityReporter | undefined): void;
export declare function runSynchronousCallback<T>(descriptor: CallbackActivityDescriptor, callback: () => T): T;
export declare function runCallback<T>(descriptor: CallbackActivityDescriptor, callback: () => T | Promise<T>): Promise<T>;
//# sourceMappingURL=callback-activity.d.ts.map