import { Schema, Querier } from '@platform-modules/db';
import { R as RecordStore } from '../types-CHPf8hqt.js';
import * as drizzle_orm_pg_core from 'drizzle-orm/pg-core';

declare const recordStoreTable: drizzle_orm_pg_core.PgTableWithColumns<{
    name: "record_store";
    schema: undefined;
    columns: {
        seq: drizzle_orm_pg_core.PgColumn<{
            name: "seq";
            tableName: "record_store";
            dataType: "number";
            columnType: "PgBigSerial53";
            data: number;
            driverParam: number;
            notNull: true;
            hasDefault: true;
            isPrimaryKey: true;
            isAutoincrement: false;
            hasRuntimeDefault: false;
            enumValues: undefined;
            baseColumn: never;
            identity: undefined;
            generated: undefined;
        }, {}, {}>;
        id: drizzle_orm_pg_core.PgColumn<{
            name: "id";
            tableName: "record_store";
            dataType: "string";
            columnType: "PgText";
            data: string;
            driverParam: string;
            notNull: true;
            hasDefault: false;
            isPrimaryKey: false;
            isAutoincrement: false;
            hasRuntimeDefault: false;
            enumValues: [string, ...string[]];
            baseColumn: never;
            identity: undefined;
            generated: undefined;
        }, {}, {}>;
        createdAtMs: drizzle_orm_pg_core.PgColumn<{
            name: "created_at_ms";
            tableName: "record_store";
            dataType: "number";
            columnType: "PgBigInt53";
            data: number;
            driverParam: string | number;
            notNull: true;
            hasDefault: false;
            isPrimaryKey: false;
            isAutoincrement: false;
            hasRuntimeDefault: false;
            enumValues: undefined;
            baseColumn: never;
            identity: undefined;
            generated: undefined;
        }, {}, {}>;
        record: drizzle_orm_pg_core.PgColumn<{
            name: "record";
            tableName: "record_store";
            dataType: "json";
            columnType: "PgJsonb";
            data: unknown;
            driverParam: unknown;
            notNull: true;
            hasDefault: false;
            isPrimaryKey: false;
            isAutoincrement: false;
            hasRuntimeDefault: false;
            enumValues: undefined;
            baseColumn: never;
            identity: undefined;
            generated: undefined;
        }, {}, {}>;
    };
    dialect: "pg";
}>;
declare const recordStoreSchema: {
    recordStore: drizzle_orm_pg_core.PgTableWithColumns<{
        name: "record_store";
        schema: undefined;
        columns: {
            seq: drizzle_orm_pg_core.PgColumn<{
                name: "seq";
                tableName: "record_store";
                dataType: "number";
                columnType: "PgBigSerial53";
                data: number;
                driverParam: number;
                notNull: true;
                hasDefault: true;
                isPrimaryKey: true;
                isAutoincrement: false;
                hasRuntimeDefault: false;
                enumValues: undefined;
                baseColumn: never;
                identity: undefined;
                generated: undefined;
            }, {}, {}>;
            id: drizzle_orm_pg_core.PgColumn<{
                name: "id";
                tableName: "record_store";
                dataType: "string";
                columnType: "PgText";
                data: string;
                driverParam: string;
                notNull: true;
                hasDefault: false;
                isPrimaryKey: false;
                isAutoincrement: false;
                hasRuntimeDefault: false;
                enumValues: [string, ...string[]];
                baseColumn: never;
                identity: undefined;
                generated: undefined;
            }, {}, {}>;
            createdAtMs: drizzle_orm_pg_core.PgColumn<{
                name: "created_at_ms";
                tableName: "record_store";
                dataType: "number";
                columnType: "PgBigInt53";
                data: number;
                driverParam: string | number;
                notNull: true;
                hasDefault: false;
                isPrimaryKey: false;
                isAutoincrement: false;
                hasRuntimeDefault: false;
                enumValues: undefined;
                baseColumn: never;
                identity: undefined;
                generated: undefined;
            }, {}, {}>;
            record: drizzle_orm_pg_core.PgColumn<{
                name: "record";
                tableName: "record_store";
                dataType: "json";
                columnType: "PgJsonb";
                data: unknown;
                driverParam: unknown;
                notNull: true;
                hasDefault: false;
                isPrimaryKey: false;
                isAutoincrement: false;
                hasRuntimeDefault: false;
                enumValues: undefined;
                baseColumn: never;
                identity: undefined;
                generated: undefined;
            }, {}, {}>;
        };
        dialect: "pg";
    }>;
};
type RecordStoreSchema = typeof recordStoreSchema;

type QuerierRecordStoreOptions = {
    now?: () => string;
    makeId?: () => string;
};
declare function makeQuerierRecordStore<T, S extends Schema>(db: Querier<S>, table?: typeof recordStoreTable, opts?: QuerierRecordStoreOptions): RecordStore<T>;

export { type QuerierRecordStoreOptions, type RecordStoreSchema, makeQuerierRecordStore, recordStoreSchema, recordStoreTable };
