import StorageOption from '../../../protection-plan/domain/models/storage-option';
import { ProtectionPlanStatus } from '../../../protection-plan/domain/models/personal-protection-plan';
interface PersonalProtectionPlanViewProps {
    id: string;
    code: string;
    owner: {
        id: string;
        firstName: string;
        lastName: string;
        profilePicture?: string;
    };
    name: string;
    description?: string;
    privateNotes?: string;
    data?: string;
    createdAt: Date;
    contractAddress?: string;
    network?: string;
    status: ProtectionPlanStatus;
    triggers: string[];
    mergeThreshold: number;
    mergeCount: number;
    lastReleasedAt?: Date;
    shareholders: {
        id: string;
        storageOption: StorageOption;
    }[];
    shares: {
        addressCount: number;
        type: string;
        shareholderId: string;
        storageOption: StorageOption;
    }[];
    chain: {
        id: string;
        name: string;
    };
    type: 'BACKUP' | 'INHERITANCE';
    isFree?: boolean;
}
export default class PersonalProtectionPlanView {
    private props;
    constructor(props: PersonalProtectionPlanViewProps);
    get id(): string;
    get code(): string;
    get isFree(): boolean | undefined;
    get isBackupPlan(): boolean;
    get storageLayers(): string[];
    get chain(): {
        id: string;
        name: string;
    };
    get network(): string | undefined;
    get triggers(): string[];
    get owner(): {
        id: string;
        firstName: string;
        lastName: string;
        profilePicture?: string;
    };
    get name(): string;
    get description(): string | undefined;
    get lastReleasedAt(): Date | undefined;
    get mergeThreshold(): number;
    get mergeCount(): number;
    get privateNotes(): string | undefined;
    get mobileSharesCount(): number;
    get coldSharesCount(): number;
    get backupSharesCount(): number;
    get sharesCount(): number;
    get data(): string | undefined;
    get createdAt(): Date;
    get contractAddress(): string | undefined;
    get status(): ProtectionPlanStatus;
    get type(): "BACKUP" | "INHERITANCE";
}
export {};
