import { WorkspaceScopedResource } from './base.js';
import type { ListParams } from '../core/utils.js';
type ForkStatus = {
    endpoint?: string;
    status?: string;
    ttl_days?: number;
    [key: string]: unknown;
};
type QueryResult = {
    columns?: string[];
    rows?: unknown[];
    row_count?: number;
    [key: string]: unknown;
};
type QueryTool = {
    id?: string;
    workspace_id?: string;
    name?: string;
    description?: string | null;
    query?: string;
    parameters?: Record<string, unknown>;
    enabled?: boolean;
    target?: string;
    created_at?: string;
    updated_at?: string;
    [key: string]: unknown;
};
type QueryToolList = {
    items: QueryTool[];
    has_more?: boolean;
    continuation_token?: number | null;
};
type JsonObject = Record<string, unknown>;
export declare class WorkspaceDatabaseResource extends WorkspaceScopedResource {
    private get;
    private post;
    private patch;
    private delete;
    getFork(): Promise<ForkStatus & import("../index.js").ResponseMetadata>;
    createFork(body: JsonObject): Promise<ForkStatus & import("../index.js").ResponseMetadata>;
    deleteFork(): Promise<void>;
    executeQuery(body: JsonObject): Promise<QueryResult & import("../index.js").ResponseMetadata>;
    listQueryTools(params?: ListParams): Promise<QueryToolList & import("../index.js").ResponseMetadata>;
    listQueryToolsAutoPaging(params?: ListParams): AsyncGenerator<QueryTool, any, any>;
    createQueryTool(body: JsonObject): Promise<QueryTool & import("../index.js").ResponseMetadata>;
    updateQueryTool(toolId: string, body: JsonObject): Promise<QueryTool & import("../index.js").ResponseMetadata>;
    deleteQueryTool(toolId: string): Promise<void>;
    testQueryTool(toolId: string, body: JsonObject): Promise<QueryResult & import("../index.js").ResponseMetadata>;
}
export {};
//# sourceMappingURL=workspace-database.d.ts.map