import { Database, DatabaseStorageOptions, DeleteDatabaseResult, EnsureDatabaseResult } from "./types.js";
/**
 * Client for interacting with database functionality outside of JSX context
 */
export declare class DatabaseClient {
    private storage;
    /**
     * Create a new DatabaseClient
     * @param options Optional configuration properties for the database storage
     */
    constructor(options?: DatabaseStorageOptions);
    /**
     * Get a database (ensures it exists first)
     * @param name The database name
     * @returns A Promise resolving to a Database
     */
    getDatabase(name: string): Promise<Database>;
    /**
     * Ensure a database exists (idempotent operation)
     * @param name The database name
     * @returns A Promise resolving to the ensure result
     */
    ensureDatabase(name: string): Promise<EnsureDatabaseResult>;
    /**
     * List all databases
     * @param options Optional pagination options
     * @returns A Promise resolving to an array of database names and optional next cursor
     */
    listDatabases(options?: {
        limit?: number;
        cursor?: string;
    }): Promise<{
        databases: {
            name: string;
            createdAt: Date;
        }[];
        nextCursor?: string;
    }>;
    /**
     * Delete a database
     * @param name The database name
     * @returns A Promise resolving to the deletion result
     */
    deleteDatabase(name: string): Promise<DeleteDatabaseResult>;
    /**
     * Check if a database exists
     * @param name The database name
     * @returns A Promise resolving to a boolean indicating if the database exists
     */
    databaseExists(name: string): Promise<boolean>;
}
//# sourceMappingURL=databaseClient.d.ts.map