import { DatabaseDriver } from '../database.js';
import { a as CreateDriverResult } from '../../../../index-Cd7wE4bj.js';
import { a as KyselyConfig } from '../../../../drivers_options-Dm62iGEe.js';
import { D as DatabaseAdapter } from '../../../../driver-CldynQv4.js';
import '../../base_driver.js';
import '@poppinss/exception';
import '@boringnode/bus/types/main';
import '@julr/utils/logger';
import 'knex';
import 'kysely';
import '@aws-sdk/client-dynamodb';
import 'ioredis';
import 'orchid-orm';

/**
 * Create a kysely driver
 * You will need to install the underlying database package (mysql2, pg, sqlite3, etc)
 */
declare function kyselyDriver(options: KyselyConfig): CreateDriverResult<DatabaseDriver>;
/**
 * Kysely adapter for the DatabaseDriver
 */
declare class KyselyAdapter implements DatabaseAdapter {
    #private;
    constructor(config: KyselyConfig);
    setTableName(tableName: string): void;
    get(key: string): Promise<{
        value: any;
        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: {
        value: any;
        key: string;
        expiresAt: Date | null;
    }): Promise<void>;
}

export { KyselyAdapter, kyselyDriver };
