import { Model } from 'mongoose';
import { ChangeLog, ChangeLogDocument } from './change-log.schema';
import { RequestContext } from 'src/common/context/request-context';
export declare class AuditService {
    private readonly model;
    constructor(model: Model<ChangeLogDocument>);
    log(params: {
        entity: string;
        entityId: string;
        action: ChangeLog['action'];
        before?: any;
        after?: any;
        ctx?: RequestContext;
    }): Promise<import("mongoose").Document<unknown, {}, ChangeLogDocument, {}> & ChangeLog & import("mongoose").Document<unknown, any, any, Record<string, any>> & Required<{
        _id: string;
    }> & {
        __v: number;
    }>;
    find(filter?: {
        entity?: string;
        entityId?: string;
        action?: string;
        ay?: string | null;
    }): import("mongoose").Query<(import("mongoose").FlattenMaps<ChangeLogDocument> & Required<{
        _id: string;
    }> & {
        __v: number;
    })[], import("mongoose").Document<unknown, {}, ChangeLogDocument, {}> & ChangeLog & import("mongoose").Document<unknown, any, any, Record<string, any>> & Required<{
        _id: string;
    }> & {
        __v: number;
    }, {}, ChangeLogDocument, "find", {}>;
}
