import { FieldMaskInterface } from './field-mask.interface'; import { LineItemInterface } from './workflow.interface'; import { PagedRequestOptionsInterface, PagedResponseMetadataInterface } from './paging.interface'; import * as e from '../enums'; export interface ArchiveDocumentRequestInterface { documentId?: string; } export interface ContentInterface { type?: e.ContentType; value?: string; } export interface CreateDocumentRequestInterface { document?: DocumentInterface; } export interface CreateDocumentResponseInterface { documentId?: string; } export interface DeleteDocumentRequestInterface { documentId?: string; } export interface DocumentInterface { documentId?: string; title?: string; description?: string; created?: Date; updated?: Date; deleted?: Date; pageCount?: number; jsonContent?: string; type?: e.DocumentType; shareType?: e.DocumentShareType; organizationId?: string; organizationType?: e.OrganizationType; creatorUserId?: string; recipientOrganizationId?: string; recipientOrganizationType?: e.OrganizationType; orderId?: string; tags?: string[]; marketId?: string; status?: e.DocumentStatus; archived?: Date; viewCount?: number; thumbnailPath?: string; pdfPath?: string; snapshotId?: string; currencyCode?: string; recipientContactId?: string; format?: FormatInterface; } export interface DocumentEmailRecipientInterface { name?: string; emailAddress?: string; } export interface DocumentEventInterface { documentId?: string; occurred?: Date; performedBy?: string; eventType?: e.DocumentEventType; eventContext?: string; deleted?: Date; context?: DocumentEventContextInterface; } export interface DocumentEventContextInterface { sentByEmailContext?: DocumentEventContextSentByEmailInterface; viewedByRecipientContext?: DocumentEventContextViewedByRecipientInterface; approvedByRecipientContext?: DocumentEventContextApprovedByRecipientInterface; feedbackFromRecipientContext?: DocumentEventContextFeedbackFromRecipientInterface; commentFromInternalUserContext?: DocumentEventContextCommentFromInternalUserInterface; sendForInternalReviewContext?: DocumentEventContextSendForInternalReviewInterface; reviewedByInternalUserContext?: DocumentEventContextReviewedByInternalUserInterface; unlockedDocumentContext?: DocumentEventContextUnlockDocumentInterface; } export interface DocumentEventContextApprovedByRecipientInterface { email?: string; } export interface DocumentEventContextCommentFromInternalUserInterface { userId?: string; conversationOriginLocationExternalId?: string; } export interface DocumentEventContextFeedbackFromRecipientInterface { orderId?: string; recipientOrganizationId?: string; recipientOrganizationType?: e.OrganizationType; recipientEmail?: string; recipientName?: string; } export interface DocumentEventContextReviewedByInternalUserInterface { reviewerUserId?: string; comment?: string; } export interface DocumentEventContextSendForInternalReviewInterface { requesterUserId?: string; reviewerUserId?: string; comment?: string; } export interface DocumentEventContextSentByEmailInterface { sentEmails?: SentDocumentEmailInterface[]; } export interface DocumentEventContextUnlockDocumentInterface { userId?: string; } export interface DocumentEventContextViewedByRecipientInterface { orderId?: string; recipientOrganizationId?: string; recipientOrganizationType?: e.OrganizationType; recipientEmail?: string; recipientName?: string; } export interface ListDocumentEventsRequestFiltersInterface { eventTypes?: e.DocumentEventType[]; } export interface ListDocumentsRequestFiltersInterface { types?: e.DocumentType[]; organizationId?: string; recipientOrganizationId?: string; marketId?: string; statuses?: e.DocumentStatus[]; } export interface SearchDocumentsRequestFiltersInterface { types?: e.DocumentType[]; statuses?: e.DocumentStatus[]; organizationId?: string; recipientOrganizationId?: string; marketId?: string; organizationUserIds?: string[]; } export interface FormatInterface { orientation?: e.Orientation; } export interface GenerateDocumentPDFRequestInterface { documentId?: string; } export interface GetDocumentLineItemsRequestInterface { documentId?: string; } export interface GetDocumentLineItemsResponseInterface { lineItems?: LineItemInterface[]; } export interface GetDocumentRequestInterface { documentId?: string; } export interface GetDocumentResponseInterface { document?: DocumentInterface; } export interface GetMultiDocumentsRequestInterface { documentIds?: string[]; } export interface GetMultiDocumentsResponseInterface { documents?: DocumentInterface[]; } export interface GetProposalEmailPreviewRequestInterface { documentId?: string; proposalEmailDetails?: ProposalEmailDetailsInterface; senderUserId?: string; } export interface GetProposalEmailPreviewResponseInterface { emailPreviewContent?: ContentInterface; } export interface ListDocumentEventsRequestInterface { documentId?: string; filters?: ListDocumentEventsRequestFiltersInterface; } export interface ListDocumentEventsResponseInterface { events?: DocumentEventInterface[]; } export interface ListDocumentsRequestInterface { paging?: PagedRequestOptionsInterface; filters?: ListDocumentsRequestFiltersInterface; } export interface ListDocumentsResponseInterface { documents?: DocumentInterface[]; paging?: PagedResponseMetadataInterface; } export interface MarkDocumentAsReviewedRequestInterface { documentId?: string; reviewerUserId?: string; comment?: string; } export interface MarkDocumentAsViewedRequestInterface { documentId?: string; orderToken?: string; } export interface ProposalEmailDetailsInterface { subject?: string; emailText?: string; proposalLinkText?: string; closingText?: string; } export interface ProposalEmailMessageInterface { to?: RecipientInterface[]; replyTo?: RecipientInterface; } export interface RecipientInterface { name?: string; emailAddress?: string; } export interface SearchDocumentsRequestInterface { paging?: PagedRequestOptionsInterface; filters?: SearchDocumentsRequestFiltersInterface; searchTerm?: string; } export interface SearchDocumentsResponseInterface { documents?: DocumentInterface[]; paging?: PagedResponseMetadataInterface; } export interface SendDocumentForInternalReviewRequestInterface { documentId?: string; requesterUserId?: string; reviewerUserId?: string; comment?: string; } export interface SendProposalRecipientEmailRequestInterface { proposalEmailMessage?: ProposalEmailMessageInterface; senderUserId?: string; documentId?: string; idempotencyKey?: string; organizationId?: string; proposalEmailDetails?: ProposalEmailDetailsInterface; } export interface SentDocumentEmailInterface { emailId?: string; recipient?: DocumentEmailRecipientInterface; } export interface UnarchiveDocumentRequestInterface { documentId?: string; } export interface UnlockDocumentRequestInterface { documentId?: string; userId?: string; } export interface UpdateDocumentRequestInterface { documentId?: string; document?: DocumentInterface; fieldMask?: FieldMaskInterface; } export interface UpsertDocumentLineItemsRequestInterface { documentId?: string; lineItems?: LineItemInterface[]; }