import { DocumentEntity, UserEntity, FileEntity, GroupEntity, OrganizationEntity, DIGITAL_SIGNATURE_REQUEST_STATUS } from '../..'; import { SignatureBaseDto, SignatureRequestBaseDto } from './base.dto'; /** * Submit a new digital signature request (DSR) * - Should be submitted as form * - File should be attached to `document` field * */ export declare class DigitalSignatureRequestDto extends SignatureRequestBaseDto { /** * Any user except submitter that are required to sign this document * - Fill with one or more usernames (excluding submitting user) * * Submit form like so: * signing_parties: user1@domain.com * signing_parties: user2@domain.com */ signing_parties?: string[]; } /** * Extracted and created file, passing along * @deprecated */ export declare class DigitalSignatureRequestWithFile extends DigitalSignatureRequestDto { file: FileEntity; /** @deprecated */ requestSignatureAfterConversion?: boolean; } /** * Digital signature request status (DSR) * - Overview of current signature status */ export declare class DigitalSignatureStatusResponse { id: string; username: string; status: DIGITAL_SIGNATURE_REQUEST_STATUS; hash?: string; } /** * Digital signature request response * - This is what you will get after submitting a new DSR * - `signatures` contain any number of requested signatures */ export declare class DigitalSignatureRequestResponse { signatures: DigitalSignatureStatusResponse[]; document: DocumentEntity; files: FileEntity[]; } /** * Confirm or reject digital signature request (DSR) */ export declare class DigitalSignatureRejectOrConfirmDto { hash?: string; status: DIGITAL_SIGNATURE_REQUEST_STATUS.DONE | DIGITAL_SIGNATURE_REQUEST_STATUS.REJECTED; message?: string; } export declare class CreateDigitalSignatureBaseDto extends SignatureBaseDto { status: DIGITAL_SIGNATURE_REQUEST_STATUS.NEW; } /** * Actually create initial signature */ export declare class CreateDigitalSignatureDto extends DigitalSignatureRequestWithFile { signingParties?: UserEntity[]; status: DIGITAL_SIGNATURE_REQUEST_STATUS.NEW; document?: DocumentEntity; organization: OrganizationEntity; groups: GroupEntity[]; createdByUser: UserEntity; }