import type { StateStore, WorkflowState, WorkflowStateFilters } from '../state';
interface WorkflowStateRecord {
    id: string;
    name: string;
    version: string;
    status: string;
    currentStep: string;
    data: unknown;
    history: unknown[];
    retryCounts: Record<string, number>;
    createdAt: Date;
    updatedAt: Date;
}
interface PrismaClientLike {
    workflowState: {
        create: (args: {
            data: Record<string, unknown>;
        }) => Promise<WorkflowStateRecord>;
        findUnique: (args: {
            where: {
                id: string;
            };
        }) => Promise<WorkflowStateRecord | null>;
        update: (args: {
            where: {
                id: string;
            };
            data: Record<string, unknown>;
        }) => Promise<WorkflowStateRecord>;
        findMany: (args: {
            where?: Record<string, unknown>;
        }) => Promise<WorkflowStateRecord[]>;
    };
}
export declare class PrismaStateStore implements StateStore {
    private readonly prisma;
    constructor(prisma: PrismaClientLike);
    create(state: WorkflowState): Promise<void>;
    get(workflowId: string): Promise<WorkflowState | undefined>;
    update(workflowId: string, updater: (current: WorkflowState) => WorkflowState): Promise<WorkflowState>;
    list(filters?: WorkflowStateFilters): Promise<WorkflowState[]>;
}
export {};
