import type { PmAuditLog, AuditAction } from '../../../domain/generated/output.js';
import type { IPmAuditLogRepository } from '../../ports/output/repositories/pm-audit-log-repository.interface.js';
export interface CreateAuditLogInput {
    actorId: string;
    action: AuditAction;
    targetId?: string;
    targetType?: string;
    metadata?: Record<string, unknown>;
    ipAddress?: string;
}
export type CreateAuditLogResult = {
    ok: true;
    entry: PmAuditLog;
} | {
    ok: false;
    error: string;
};
export declare class CreateAuditLogUseCase {
    private readonly auditRepo;
    constructor(auditRepo: IPmAuditLogRepository);
    execute(input: CreateAuditLogInput): Promise<CreateAuditLogResult>;
}
//# sourceMappingURL=create-audit-log.use-case.d.ts.map