interface DBClientOptions {
    userId: string;
    token?: string;
    apiBase?: string;
}
export declare class ArcstrumDBClient {
    private userId;
    private token?;
    private apiBase;
    query(db_file: string, sql: string): Promise<any[]>;
    constructor({ userId, token, apiBase }: DBClientOptions);
    private headers;
    private post;
    private get;
    listDatabases(): Promise<string[]>;
    createDatabase(db_file: string): Promise<void>;
    deleteDatabase(db_file: string): Promise<void>;
    renameDatabase(old_name: string, new_name: string): Promise<void>;
    getTables(db_file: string): Promise<string[]>;
    queryTable(db_file: string, table: string): Promise<any[]>;
    insertRow(db_file: string, table: string, row: Record<string, any>): Promise<void>;
    deleteRow(db_file: string, table: string, row: Record<string, any>): Promise<void>;
    execSql(db_file: string, sql: string): Promise<void>;
    validateSql(sql: string): Promise<{
        type: string;
        valid: boolean;
    }>;
    getUsageAnalytics(): Promise<Record<string, Record<string, number>>>;
    getTableSchema(db_file: string, table: string): Promise<any[]>;
    getDbStats(db_file: string): Promise<{
        size_bytes: number;
        last_modified: number;
    }>;
    getPreviewRows(db_file: string, table: string, limit?: number): Promise<any[]>;
    getColumnInfo(db_file: string, table: string): Promise<any[]>;
    searchTable(db_file: string, table: string, filters: {
        column: string;
        op: string;
        value: string;
    }[]): Promise<any[]>;
    getDbMetadata(db_file: string): Promise<Record<string, any>>;
    updateDbMetadata(db_file: string, metadata: Record<string, any>): Promise<void>;
    deleteDbMetadata(db_file: string): Promise<void>;
}
export {};
