/**
 * Cursor Protobuf Schema Constants
 * Field definitions and wire types for ConnectRPC protocol
 */
/** Wire types for protobuf encoding */
export declare const WIRE_TYPE: {
    readonly VARINT: 0;
    readonly FIXED64: 1;
    readonly LEN: 2;
    readonly FIXED32: 5;
};
/** Message role constants */
export declare const ROLE: {
    readonly USER: 1;
    readonly ASSISTANT: 2;
};
/** Unified mode constants */
export declare const UNIFIED_MODE: {
    readonly CHAT: 1;
    readonly AGENT: 2;
};
/** Thinking level constants */
export declare const THINKING_LEVEL: {
    readonly UNSPECIFIED: 0;
    readonly MEDIUM: 1;
    readonly HIGH: 2;
};
/** Field numbers namespaced by protobuf message type */
export declare const FIELD: {
    /** StreamUnifiedChatRequestWithTools (top level) */
    readonly Request: {
        readonly REQUEST: 1;
    };
    /** StreamUnifiedChatRequest */
    readonly Chat: {
        readonly MESSAGES: 1;
        readonly UNKNOWN_2: 2;
        readonly INSTRUCTION: 3;
        readonly UNKNOWN_4: 4;
        readonly MODEL: 5;
        readonly WEB_TOOL: 8;
        readonly UNKNOWN_13: 13;
        readonly CURSOR_SETTING: 15;
        readonly UNKNOWN_19: 19;
        readonly CONVERSATION_ID: 23;
        readonly METADATA: 26;
        readonly IS_AGENTIC: 27;
        readonly SUPPORTED_TOOLS: 29;
        readonly MESSAGE_IDS: 30;
        readonly MCP_TOOLS: 34;
        readonly LARGE_CONTEXT: 35;
        readonly UNKNOWN_38: 38;
        readonly UNIFIED_MODE: 46;
        readonly UNKNOWN_47: 47;
        readonly SHOULD_DISABLE_TOOLS: 48;
        readonly THINKING_LEVEL: 49;
        readonly UNKNOWN_51: 51;
        readonly UNKNOWN_53: 53;
        readonly UNIFIED_MODE_NAME: 54;
    };
    /** ConversationMessage */
    readonly Message: {
        readonly CONTENT: 1;
        readonly ROLE: 2;
        readonly ID: 13;
        readonly TOOL_RESULTS: 18;
        readonly IS_AGENTIC: 29;
        readonly UNIFIED_MODE: 47;
        readonly SUPPORTED_TOOLS: 51;
    };
    /** ConversationMessage.ToolResult */
    readonly ToolResult: {
        readonly CALL_ID: 1;
        readonly NAME: 2;
        readonly INDEX: 3;
        readonly RAW_ARGS: 5;
        readonly RESULT: 8;
    };
    /** Model */
    readonly Model: {
        readonly NAME: 1;
        readonly EMPTY: 4;
    };
    /** Instruction */
    readonly Instruction: {
        readonly TEXT: 1;
    };
    /** CursorSetting (U6_FIELD_* are sub-fields of Unknown6 nested message) */
    readonly Setting: {
        readonly PATH: 1;
        readonly UNKNOWN_3: 3;
        readonly UNKNOWN_6: 6;
        readonly UNKNOWN_8: 8;
        readonly UNKNOWN_9: 9;
        readonly U6_FIELD_1: 1;
        readonly U6_FIELD_2: 2;
    };
    /** Metadata */
    readonly Metadata: {
        readonly PLATFORM: 1;
        readonly ARCH: 2;
        readonly VERSION: 3;
        readonly CWD: 4;
        readonly TIMESTAMP: 5;
    };
    /** MessageId */
    readonly MessageId: {
        readonly ID: 1;
        readonly SUMMARY: 2;
        readonly ROLE: 3;
    };
    /** MCPTool */
    readonly McpTool: {
        readonly NAME: 1;
        readonly DESC: 2;
        readonly PARAMS: 3;
        readonly SERVER: 4;
    };
    /** StreamUnifiedChatResponseWithTools (response top-level) */
    readonly Response: {
        readonly TOOL_CALL: 1;
        readonly RESPONSE: 2;
    };
    /** ClientSideToolV2Call */
    readonly ToolCall: {
        readonly ID: 3;
        readonly NAME: 9;
        readonly RAW_ARGS: 10;
        readonly IS_LAST: 11;
        readonly MCP_PARAMS: 27;
    };
    /** MCPParams */
    readonly McpParams: {
        readonly TOOLS_LIST: 1;
    };
    /** MCPParams.Tool (nested) */
    readonly McpNested: {
        readonly NAME: 1;
        readonly PARAMS: 3;
    };
    /** StreamUnifiedChatResponse */
    readonly ChatResponse: {
        readonly TEXT: 1;
        readonly THINKING: 25;
    };
    /** Thinking */
    readonly Thinking: {
        readonly TEXT: 1;
    };
};
/** Type definitions */
export type WireType = (typeof WIRE_TYPE)[keyof typeof WIRE_TYPE];
export type RoleType = (typeof ROLE)[keyof typeof ROLE];
export type UnifiedModeType = (typeof UNIFIED_MODE)[keyof typeof UNIFIED_MODE];
export type ThinkingLevelType = (typeof THINKING_LEVEL)[keyof typeof THINKING_LEVEL];
/** Cursor credentials structure */
export interface CursorApiCredentials {
    accessToken: string;
    machineId: string;
    ghostMode?: boolean;
}
/** Cursor tool definition */
export interface CursorTool {
    function?: {
        name?: string;
        description?: string;
        parameters?: Record<string, unknown>;
    };
    name?: string;
    description?: string;
    input_schema?: Record<string, unknown>;
}
/** Cursor tool result */
export interface CursorToolResult {
    tool_call_id?: string;
    name?: string;
    index?: number;
    raw_args?: string;
}
/** Cursor message format */
export interface CursorMessage {
    role: string;
    content: string;
    tool_results?: CursorToolResult[];
    tool_calls?: Array<{
        id: string;
        type: string;
        function: {
            name: string;
            arguments: string;
        };
    }>;
}
/** Formatted message for encoding */
export interface FormattedMessage {
    content: string;
    role: RoleType;
    messageId: string;
    isLast: boolean;
    hasTools: boolean;
    toolResults: CursorToolResult[];
}
/** Message ID structure */
export interface MessageId {
    messageId: string;
    role: RoleType;
}
/** Bit flags for ConnectRPC envelopes. */
export declare const CONNECT_FRAME_FLAG: {
    readonly COMPRESSED: 1;
    readonly END_STREAM: 2;
};
/** ConnectRPC frame flag presets. */
export declare const COMPRESS_FLAG: {
    readonly NONE: 0;
    readonly GZIP: 1;
    readonly END_STREAM: 2;
    readonly GZIP_END_STREAM: number;
};
export declare const CONNECT_FRAME_FLAG_MASK: number;
export declare function isCompressedConnectFrame(flags: number): boolean;
export declare function isEndStreamConnectFrame(flags: number): boolean;
export declare function hasUnknownConnectFrameFlags(flags: number): boolean;
//# sourceMappingURL=cursor-protobuf-schema.d.ts.map