import { Repository } from 'typeorm';
import { User } from '../users/entities/user.entity';
import { AuditQueryDto } from './dto/audit-query.dto';
import { AuditLog } from './entities/audit-log.entity';
interface AuditLogWithUser {
    id: number;
    userId: number;
    userEmail: string | null;
    userName: string | null;
    action: string;
    entityType: string;
    entityId: number | null;
    oldValue: unknown | null;
    newValue: unknown | null;
    ipAddress: string | null;
    createdAt: Date;
}
export declare class AuditController {
    private readonly auditRepository;
    private readonly usersRepository;
    constructor(auditRepository: Repository<AuditLog>, usersRepository: Repository<User>);
    list(query: AuditQueryDto): Promise<{
        items: AuditLogWithUser[];
        total: number;
    }>;
}
export {};
