/**
 * request_oauth tool — parks via ToolExecutor, waits for the client
 * to complete an OAuth popup flow via SFAE, then resumes with status.
 *
 * The agent never sees the actual tokens.
 */
import type { ToolDefinition } from '../../core/core-types.js';
interface BridgeResult {
    status: 'success' | 'error';
    data?: unknown;
    error?: string;
}
interface OAuthRequestBridge {
    submit(toolCallId: string, tool: string, args: Record<string, unknown>): {
        promise: Promise<BridgeResult>;
        notify: () => void;
    };
}
declare const schema: import("@sinclair/typebox").TObject<{
    domain: import("@sinclair/typebox").TString;
    scope: import("@sinclair/typebox").TString;
    message: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
}>;
export declare function createRequestOAuthTool(toolExecutor: OAuthRequestBridge): ToolDefinition<typeof schema>;
export {};
//# sourceMappingURL=request-oauth.d.ts.map