import { AuditService } from './services/audit.service';
import { QueryAuditLogsDto } from './dto/query-audit.dto';
import { QueryActivityLogsDto } from './dto/query-activity.dto';
import { CreateActivityLogDto } from './dto/create-activity.dto';
import { RequestUser } from '../auth/strategies/jwt.strategy';
export declare class AuditController {
    private readonly auditService;
    constructor(auditService: AuditService);
    queryAuditLogs(user: RequestUser, query: QueryAuditLogsDto): Promise<import("./services/audit.service").PaginatedResult<import("./entities").AuditLog>>;
    getAuditLogById(user: RequestUser, id: string): Promise<import("./entities").AuditLog | null>;
    getEntityAuditHistory(user: RequestUser, entityType: string, entityId: string): Promise<import("./entities").AuditLog[]>;
    getAuditStats(user: RequestUser, days?: number): Promise<{
        total_actions: number;
        actions_by_type: {
            action: import("./entities").AuditAction;
            count: number;
        }[];
        top_users: {
            user_id: string;
            count: number;
        }[];
    }>;
    queryActivityLogs(user: RequestUser, query: QueryActivityLogsDto): Promise<import("./services/audit.service").PaginatedResult<import("./entities").ActivityLog>>;
    createActivityLog(user: RequestUser, dto: CreateActivityLogDto, request: any): Promise<import("./entities").ActivityLog>;
    getUserActivitySummary(user: RequestUser, days?: number): Promise<{
        activity_type: import("./entities").ActivityType;
        count: number;
    }[]>;
    getSpecificUserActivitySummary(user: RequestUser, userId: string, days?: number): Promise<{
        activity_type: import("./entities").ActivityType;
        count: number;
    }[]>;
}
