import { DrizzleClient } from '../../types/drizzle.js';
import { IIntegrationRunRecorder, StartRunInput, RecordItemInput, IntegrationRunSummary, CompleteRunInput } from './integration-run-recorder.protocol.js';
import 'drizzle-orm/node-postgres';
import './integration-field-diff.protocol.js';
import 'zod';

declare class DrizzleIntegrationRunRecorder implements IIntegrationRunRecorder {
    private readonly db;
    private readonly multiTenant;
    constructor(db: DrizzleClient, multiTenant?: boolean);
    startRun(input: StartRunInput): Promise<{
        id: string;
    }>;
    recordItem(input: RecordItemInput): Promise<void>;
    listRecent(limit: number, subscriptionId?: string, tenantId?: string | null): Promise<IntegrationRunSummary[]>;
    completeRun(runId: string, input: CompleteRunInput): Promise<void>;
}

export { DrizzleIntegrationRunRecorder };
