import { SharedPlanView } from '../../domain/models/shared-plan-view';
import { SharedProtectionPlanRepository } from '../../domain/repositories/shared-protection-plan-repository';
import { PaginationOptions, SortOptions } from "../../../../../core/modules/_shared";
export interface FindSharedPlansCriteria {
    tenantId?: string;
    teamId?: string;
    userId?: string;
    memberId?: string;
    tenantMemberId?: string;
    q?: string;
    categoryId?: string;
    type?: string;
    privacyMode?: 'PUBLIC' | 'PRIVATE';
    storageLayerType?: string;
}
export declare class FindSharedProtectionPlansByCriteriaUseCase {
    private readonly planRepository;
    constructor(planRepository: SharedProtectionPlanRepository);
    execute(filters: FindSharedPlansCriteria, pagination?: PaginationOptions, sort?: SortOptions): Promise<SharedPlanView[]>;
}
