import { DatabaseDriver } from '../database.cjs';
import { C as CreateDriverResult } from '../../../../mastercache-CD6UEBYT.cjs';
import { OrchidConfig } from '../../../types/options/drivers-options.cjs';
import { DatabaseAdapter } from '../../../types/driver.cjs';
import '../../base-driver.cjs';
import '../../../types/provider.cjs';
import '../../../types/helpers.cjs';
import 'typescript-log';
import '../../../types/options/methods-options.cjs';
import '../../../types/options/options.cjs';
import '../../../../events-BJQnbTp3.cjs';
import '../../../types/bus.cjs';
import '@boringnode/bus/types/main';
import 'knex';
import 'kysely';
import '@aws-sdk/client-dynamodb';
import 'ioredis';
import 'orchid-orm';

/**
 * Orchid adapter for the DatabaseDriver
 */
declare class OrchidAdapter implements DatabaseAdapter {
    #private;
    constructor(config: OrchidConfig);
    private getTable;
    setTableName(tableName: string): void;
    get(key: string): Promise<{
        value: string;
        expiresAt: number | null;
    } | undefined>;
    delete(key: string): Promise<boolean>;
    deleteMany(keys: string[]): Promise<number>;
    disconnect(): Promise<void>;
    createTableIfNotExists(): Promise<void>;
    pruneExpiredEntries(): Promise<void>;
    clear(prefix: string): Promise<void>;
    set(row: {
        key: string;
        value: any;
        expiresAt: Date | null;
    }): Promise<void>;
}
/**
 * Create a orchid driver
 */
declare function orchidDriver(options: OrchidConfig): CreateDriverResult<DatabaseDriver>;

export { OrchidAdapter, orchidDriver };
