export declare class GoogleGmailClient {
    private oauthClient;
    private sessionId;
    private baseUrl;
    constructor();
    /**
     * Get the session ID for this client instance
     */
    getSessionId(): string;
    /**
     * Enhanced debug logging with session context
     */
    private logDebug;
    /**
     * Initialize the API client
     */
    initialize(): Promise<void>;
    /**
     * Make authenticated API request
     */
    makeRequest(config: RequestConfig): Promise<any>;
    /**
     * Send an email message. Requires message in RFC 2822 format encoded as base64url string
     */
    sendMessage(args?: any): Promise<any>;
    /**
     * Get a specific message by ID
     */
    getMessage(args?: any): Promise<any>;
    /**
     * List messages in user&#x27;s mailbox with optional filtering
     */
    listMessages(args?: any): Promise<any>;
    /**
     * Modify labels on a message (add/remove labels, mark read/unread)
     */
    modifyMessage(args?: any): Promise<any>;
    /**
     * Move a message to trash
     */
    trashMessage(args?: any): Promise<any>;
    /**
     * Remove a message from trash
     */
    untrashMessage(args?: any): Promise<any>;
    /**
     * Permanently delete a message
     */
    deleteMessage(args?: any): Promise<any>;
    /**
     * List all labels in the user&#x27;s mailbox
     */
    listLabels(args?: any): Promise<any>;
    /**
     * Get label details by ID
     */
    getLabel(args?: any): Promise<any>;
    /**
     * Create a new custom label
     */
    createLabel(args?: any): Promise<any>;
    /**
     * Update an existing label
     */
    updateLabel(args?: any): Promise<any>;
    /**
     * Delete a custom label
     */
    deleteLabel(args?: any): Promise<any>;
    /**
     * List email threads in user&#x27;s mailbox
     */
    listThreads(args?: any): Promise<any>;
    /**
     * Get a specific thread by ID
     */
    getThread(args?: any): Promise<any>;
    /**
     * Modify labels on all messages in a thread
     */
    modifyThread(args?: any): Promise<any>;
    /**
     * Move a thread to trash
     */
    trashThread(args?: any): Promise<any>;
    /**
     * Remove a thread from trash
     */
    untrashThread(args?: any): Promise<any>;
    /**
     * Permanently delete a thread
     */
    deleteThread(args?: any): Promise<any>;
    /**
     * List draft messages in user&#x27;s mailbox
     */
    listDrafts(args?: any): Promise<any>;
    /**
     * Get a specific draft by ID
     */
    getDraft(args?: any): Promise<any>;
    /**
     * Create a new draft message
     */
    createDraft(args?: any): Promise<any>;
    /**
     * Update an existing draft
     */
    updateDraft(args?: any): Promise<any>;
    /**
     * Send an existing draft
     */
    sendDraft(args?: any): Promise<any>;
    /**
     * Delete a draft
     */
    deleteDraft(args?: any): Promise<any>;
    /**
     * Get user&#x27;s Gmail profile information
     */
    getProfile(args?: any): Promise<any>;
    /**
     * Build URL with path parameters and query string
     */
    private buildUrl;
    /**
     * Check if client is authenticated
     */
    isAuthenticated(): Promise<boolean>;
    /**
     * Revoke authentication tokens
     */
    revokeAuthentication(): Promise<void>;
}
interface RequestConfig {
    method: string;
    path: string;
    pathParams?: Record<string, any>;
    queryParams?: Record<string, any>;
    body?: any;
    headers?: Record<string, string>;
}
export {};
//# sourceMappingURL=google-gmail-client.d.ts.map