import { DB } from '../db/database';
import { InferInsertModel, InferSelectModel } from 'drizzle-orm';
export declare const actionDescriptionByWizardId: {
    deployCreate2: string;
    bridge: string;
    verify: string;
};
export type WizardId = keyof typeof actionDescriptionByWizardId;
export declare const userContextTable: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
    name: "user_context";
    schema: undefined;
    columns: {
        id: import("drizzle-orm/sqlite-core").SQLiteColumn<{
            name: "id";
            tableName: "user_context";
            dataType: "string";
            columnType: "SQLiteText";
            data: string;
            driverParam: string;
            notNull: true;
            hasDefault: true;
            isPrimaryKey: true;
            isAutoincrement: false;
            hasRuntimeDefault: true;
            enumValues: [string, ...string[]];
            baseColumn: never;
            identity: undefined;
            generated: undefined;
        }, {}, {
            length: number | undefined;
        }>;
        updatedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
            name: "updated_at";
            tableName: "user_context";
            dataType: "number";
            columnType: "SQLiteInteger";
            data: number;
            driverParam: number;
            notNull: true;
            hasDefault: true;
            isPrimaryKey: false;
            isAutoincrement: false;
            hasRuntimeDefault: true;
            enumValues: undefined;
            baseColumn: never;
            identity: undefined;
            generated: undefined;
        }, {}, {}>;
        createdAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
            name: "created_at";
            tableName: "user_context";
            dataType: "number";
            columnType: "SQLiteInteger";
            data: number;
            driverParam: number;
            notNull: true;
            hasDefault: true;
            isPrimaryKey: false;
            isAutoincrement: false;
            hasRuntimeDefault: true;
            enumValues: undefined;
            baseColumn: never;
            identity: undefined;
            generated: undefined;
        }, {}, {}>;
        forgeProjectPath: import("drizzle-orm/sqlite-core").SQLiteColumn<{
            name: "forge_project_path";
            tableName: "user_context";
            dataType: "string";
            columnType: "SQLiteText";
            data: string;
            driverParam: string;
            notNull: false;
            hasDefault: false;
            isPrimaryKey: false;
            isAutoincrement: false;
            hasRuntimeDefault: false;
            enumValues: [string, ...string[]];
            baseColumn: never;
            identity: undefined;
            generated: undefined;
        }, {}, {
            length: number | undefined;
        }>;
        lastWizardId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
            name: "last_wizard_id";
            tableName: "user_context";
            dataType: "string";
            columnType: "SQLiteText";
            data: "verify" | "deployCreate2" | "bridge" | null;
            driverParam: string;
            notNull: false;
            hasDefault: false;
            isPrimaryKey: false;
            isAutoincrement: false;
            hasRuntimeDefault: false;
            enumValues: [string, ...string[]];
            baseColumn: never;
            identity: undefined;
            generated: undefined;
        }, {}, {
            length: number | undefined;
            $type: "verify" | "deployCreate2" | "bridge" | null;
        }>;
        lastWizardState: import("drizzle-orm/sqlite-core").SQLiteColumn<{
            name: "last_wizard_state";
            tableName: "user_context";
            dataType: "json";
            columnType: "SQLiteTextJson";
            data: unknown;
            driverParam: string;
            notNull: false;
            hasDefault: false;
            isPrimaryKey: false;
            isAutoincrement: false;
            hasRuntimeDefault: false;
            enumValues: undefined;
            baseColumn: never;
            identity: undefined;
            generated: undefined;
        }, {}, {}>;
    };
    dialect: "sqlite";
}>;
export type UserContext = InferSelectModel<typeof userContextTable>;
export declare const updateUserContext: (db: DB, context: Partial<InferInsertModel<typeof userContextTable>>) => Promise<import("@libsql/client").ResultSet>;
export declare const getUserContext: (db: DB) => Promise<UserContext>;
