import { AuditTrail } from './auditTrail';
import { BehalfOf } from './behalfOf';
import { DocumentCcDetails } from './documentCcDetails';
import { DocumentFiles } from './documentFiles';
import { DocumentFormFields } from './documentFormFields';
import { DocumentReassign } from './documentReassign';
import { DocumentSenderDetail } from './documentSenderDetail';
import { DocumentSignerDetails } from './documentSignerDetails';
import { FormGroup } from './formGroup';
import { GroupSignerSettings } from './groupSignerSettings';
import { RecipientNotificationSettings } from './recipientNotificationSettings';
import { ReminderSettings } from './reminderSettings';
export declare class DocumentProperties {
    'documentId'?: string | null;
    'brandId'?: string | null;
    'messageTitle'?: string | null;
    'documentDescription'?: string | null;
    'status'?: DocumentProperties.StatusEnum;
    'files'?: Array<DocumentFiles> | null;
    'senderDetail'?: DocumentSenderDetail;
    'signerDetails'?: Array<DocumentSignerDetails> | null;
    'formGroups'?: Array<FormGroup> | null;
    'commonFields'?: Array<DocumentFormFields> | null;
    'behalfOf'?: BehalfOf;
    'ccDetails'?: Array<DocumentCcDetails> | null;
    'reminderSettings'?: ReminderSettings;
    'reassign'?: Array<DocumentReassign> | null;
    'documentHistory'?: Array<AuditTrail> | null;
    'activityBy'?: string | null;
    'activityDate'?: number;
    'activityAction'?: DocumentProperties.ActivityActionEnum;
    'createdDate'?: number;
    'expiryDays'?: number;
    'expiryDate'?: number | null;
    'enableSigningOrder'?: boolean;
    'isDeleted'?: boolean;
    'revokeMessage'?: string | null;
    'declineMessage'?: string | null;
    'applicationId'?: string | null;
    'labels'?: Array<string> | null;
    'disableEmails'?: boolean;
    'enablePrintAndSign'?: boolean;
    'enableReassign'?: boolean;
    'disableExpiryAlert'?: boolean;
    'hideDocumentId'?: boolean;
    'expiryDateType'?: DocumentProperties.ExpiryDateTypeEnum;
    'expiryValue'?: number;
    'documentDownloadOption'?: DocumentProperties.DocumentDownloadOptionEnum;
    'metaData'?: {
        [key: string]: string | null;
    } | null;
    'recipientNotificationSettings'?: RecipientNotificationSettings;
    'enableAuditTrailLocalization'?: boolean;
    'downloadFileName'?: string | null;
    'scheduledSendTime'?: number | null;
    'allowedSignatureTypes'?: Array<DocumentProperties.AllowedSignatureTypesEnum>;
    'groupSignerSettings'?: GroupSignerSettings;
    'inEditingMode'?: boolean;
    'displayStatus'?: string | 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 DocumentProperties {
    enum StatusEnum {
        InProgress,
        Completed,
        Declined,
        Expired,
        Revoked,
        Draft,
        Scheduled
    }
    enum ActivityActionEnum {
        Viewed,
        Signed,
        Reassigned,
        Declined,
        Revoked,
        Expired,
        Downloaded,
        DownloadedForPrintSign,
        InitiatePrintAndSign,
        InitiateFormSign,
        CancelPrintAndSign,
        CompletePrintAndSign,
        Reviewed,
        None,
        EditingInitiated,
        EditingCancelled,
        EditingCompleted,
        DocumentScheduled
    }
    enum ExpiryDateTypeEnum {
        Days,
        Hours,
        SpecificDateTime
    }
    enum DocumentDownloadOptionEnum {
        Combined,
        Individually
    }
    enum AllowedSignatureTypesEnum {
        Text,
        Draw,
        Image
    }
}
