import { Model } from 'mongoose';
import { FilterInstructionDto } from './dto/create-filter-instruction.dto';
import { FilterInstruction } from './filter-instruction.model';
export declare class FilterInstructionService {
    private readonly filterInstructionModel;
    private readonly logger;
    constructor(filterInstructionModel: Model<FilterInstruction>);
    onModuleInit(): Promise<void>;
    findAll(query: Record<string, unknown>): Promise<{
        data: (import("mongoose").Document<unknown, {}, FilterInstruction, {}, {}> & FilterInstruction & Required<{
            _id: string | import("mongoose").Types.ObjectId;
        }> & {
            __v: number;
        })[];
        meta: {
            page: number;
            limit: number;
            total: number;
            totalPage: number;
        };
    }>;
    findOne(id: string): Promise<import("mongoose").Document<unknown, {}, FilterInstruction, {}, {}> & FilterInstruction & Required<{
        _id: string | import("mongoose").Types.ObjectId;
    }> & {
        __v: number;
    }>;
    getVersions(role: string, usedIn: string): Promise<(import("mongoose").Document<unknown, {}, FilterInstruction, {}, {}> & FilterInstruction & Required<{
        _id: string | import("mongoose").Types.ObjectId;
    }> & {
        __v: number;
    })[]>;
    setDefault(id: string): Promise<boolean>;
    update(id: string, updateFilterInstructionDto: FilterInstructionDto): Promise<boolean>;
    seedData(): Promise<void>;
    seedInstructionsArray(): Promise<void>;
}
