import APIRepository from '../../../../../../core/modules/_shared/infrastructure/api/api-repository';
import ProtectionPlanRepository, { ProtectionPlanFilters } from '../../../../protection-plan/domain/repositories/protection-plan-repository';
import { ResourceCount } from '../../../../../../core/modules/_shared/domain/models/resource-count';
import PersonalProtectionPlan from '../../../../protection-plan/domain/models/personal-protection-plan';
import PaginationOptions from '../../../../../../core/modules/_shared/domain/models/pagination-options';
import SortOptions from '../../../../../../core/modules/_shared/domain/models/sort-options';
export default class AppProtectionPlanRepository extends APIRepository implements ProtectionPlanRepository {
    findByCriteria(filter?: ProtectionPlanFilters, pagination?: PaginationOptions, sort?: SortOptions): Promise<PersonalProtectionPlan[]>;
    count(filter?: ProtectionPlanFilters): Promise<ResourceCount>;
    find(id: string): Promise<PersonalProtectionPlan | undefined>;
    save(plan: PersonalProtectionPlan): Promise<any>;
    configure(operation: string, plan: PersonalProtectionPlan): Promise<any>;
}
