/**
 * @module Protection Plan
 */
import { AppModule } from "../../../core/modules/_shared/domain/models/app-module";
import type { CoreModuleConfig } from "../../../core/modules/_shared/core-module";
import ProtectionPlanDataProvider from "../protection-plan/infrastructure/providers/protection-plan-data-provider";
import ProtectionPlanServiceProvider from "../protection-plan/infrastructure/providers/protection-plan-service-provider";
import PlanListingAndCreationUseCaseProvider from "../protection-plan/infrastructure/providers/plan-listing-and-creation-use-case-provider";
import PlanConfigurationUseCaseProvider from "../protection-plan/infrastructure/providers/plan-configuration-use-case-provider";
import PlanMergingUseCaseProvider from "../protection-plan/infrastructure/providers/plan-merging-use-case-provider";
export type { PlanBeneficiaryInput, PlanDetailsInput, PlanOwnerInput, PlanSharesConfigurationInput, PlanStorageConfigurationInput, PlanTriggerInput, ProtectionPlanInput } from './domain/dto/protection-plan-input';
export type { PlanBeneficiaryRelationView, PlanBeneficiaryView, PlanShareView, PlanStorageLayer, PlanTriggerView, ProtectionPlanSummaryProps, ShareholderView } from './domain/models/protection-plan-summary';
export { default as PersonalProtectionPlan } from './domain/models/personal-protection-plan';
export { ProtectionPlanSummary } from './domain/models/protection-plan-summary';
export { PlanConfigurationProcessView } from './domain/models/plan-configuration-process-view';
export type { ConfigurationStatus, PlanConfigurationProcessViewProps } from './domain/models/plan-configuration-process-view';
export { PlanMergeProcessView } from './domain/models/merging-process/plan-merge-process-view';
export type { MergeProcessBuildState, MergeStatus } from './domain/models/merging-process/plan-merge-process-view';
export { default as TriggerBuilder, TriggerCountDownBuilder } from './domain/utils/trigger-builder';
export { default as PlanBeneficiaryBuilder } from './domain/utils/plan-beneficiary-builder';
export { default as ProtectionPlanCode } from './domain/utils/protection-plan-code';
export { default as ProtectionPlanId } from './domain/utils/protection-plan-id';
export * from '../../../core/modules/data-assets';
export declare class ProtectionPlanModule extends AppModule {
    private args;
    static readonly dependsOn: readonly ["core"];
    static readonly config?: CoreModuleConfig & ProtectionPlanModuleConfig;
    name: string;
    constructor(args: {
        deps?: {
            core: AppModule;
            safekey: AppModule;
        };
        config?: CoreModuleConfig & ProtectionPlanModuleConfig;
    });
    get providers(): (ProtectionPlanDataProvider | ProtectionPlanServiceProvider | PlanListingAndCreationUseCaseProvider | PlanConfigurationUseCaseProvider | PlanMergingUseCaseProvider)[];
}
export type ProtectionPlanModuleConfig = {
    authTokens: {
        mergingProcessKey: string;
    };
};
