import { PhoneNumber } from './phoneNumber';
import { TemplateGroupSigner } from './templateGroupSigner';
export declare class TemplateSignerDetails {
    'signerName'?: string | null;
    'signerRole'?: string | null;
    'signerEmail'?: string | null;
    'phoneNumber'?: PhoneNumber;
    'status'?: TemplateSignerDetails.StatusEnum;
    'enableAccessCode'?: boolean;
    'enableEmailOTP'?: boolean;
    'imposeAuthentication'?: TemplateSignerDetails.ImposeAuthenticationEnum;
    'deliveryMode'?: TemplateSignerDetails.DeliveryModeEnum;
    'allowFieldConfiguration'?: boolean;
    'userId'?: string | null;
    'order'?: number;
    'signerType'?: TemplateSignerDetails.SignerTypeEnum;
    'hostEmail'?: string | null;
    'hostName'?: string | null;
    'hostUserId'?: string | null;
    'signType'?: TemplateSignerDetails.SignTypeEnum;
    'groupId'?: string | null;
    'groupSigners'?: Array<TemplateGroupSigner> | null;
    static discriminator: string | undefined;
    static attributeTypeMap: Array<{
        name: string;
        baseName: string;
        type: string;
    }>;
    static getAttributeTypeMap(): {
        name: string;
        baseName: string;
        type: string;
    }[];
}
export declare namespace TemplateSignerDetails {
    enum StatusEnum {
        None,
        NotCompleted,
        Completed,
        Declined,
        Revoked,
        Expired
    }
    enum ImposeAuthenticationEnum {
        None,
        EmailOtp,
        AccessCode,
        Smsotp,
        IdVerification
    }
    enum DeliveryModeEnum {
        Email,
        Sms,
        EmailAndSms,
        WhatsApp
    }
    enum SignerTypeEnum {
        Signer,
        Reviewer,
        InPersonSigner
    }
    enum SignTypeEnum {
        Single,
        Group
    }
}
