/* Options: Date: 2024-10-18 04:17:10 Version: 6.40 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://digiofficeapigateway.deltares.nl/api //GlobalNamespace: //MakePropertiesOptional: False //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: GenerateDocumentBatch.* //ExcludeTypes: //DefaultImports: */ export interface IReturn { createResponse(): T; } export class UserReference implements IEntityReference { public ID?: number; public LoginName: string; public UserPrincipalName: string; public FullName: string; public EmailAddress: string; public GlobalID?: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class DocumentgeneratorDocumentReference implements IEntityReference { public ID?: string; public Name: string; public GlobalID?: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class RegistrationProfileReference implements IEntityReference { public ID: string; public GlobalID?: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class DocumentReference implements IEntityReference { public ID?: string; public Code: string; public VersionCode: string; public RootDocID?: string; public InternalInvoiceCode: string; public CompanyNumber?: number; public DocumentTypeID: string; public InvoiceType?: number; public RegProfCatID?: number; public GlobalID?: string; public ExternalID: string; public ExternNr: string; public InternNummer: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class MessageQueueReference implements IEntityReference { public ID?: number; public GlobalID?: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class ConfigurationSource { /** * Document genereren op basis van een DocGenDocument. */ public DocumentgeneratorDocument: DocumentgeneratorDocumentReference; /** * Document genereren op basis van een RegistratieProfiel. */ public RegistrationProfile: RegistrationProfileReference; /** * Use existing document registration. */ public RegisteredDocument: DocumentReference; /** * Use draft document registration. */ public DraftDocumentRegistration: MessageQueueReference; public DocumentgeneratorType: string; /** * DocumentgeneratorType voor bijvoorbeeld Word of Email. */ public DocumentgeneratorTypeName: string; public TemplateExtension: string; public OutputExtension: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export enum VersioningType { New = 'New', Change = 'Change', Primary = 'Primary', Secondary = 'Secondary', } export class CompanyReference implements IEntityReference { public ID?: number; public Number?: number; public GlobalID?: string; public ExternalID: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class RelationReference implements IEntityReference { public ID?: number; public CreditorNumber?: number; public DebtorNumber?: number; public GlobalLocationNumber: string; public GlobalID?: string; public ExternalID: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class PersonReference implements IEntityReference { public ID?: number; public Number?: number; public GlobalID?: string; public ExternalID: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class ProjectReference implements IEntityReference { public ID?: number; public Code: string; public TypeExternalID: string; public CompanyNumber?: number; public GlobalID?: string; public ExternalID: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class SubProject { public Project: ProjectReference; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class ContactPersonReference implements IEntityReference { public ID?: number; public GlobalID?: string; public ExternalID: string; public RelationID?: number; public PersonID?: number; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export enum SignerType { MainSigner = 'MainSigner', AdditionalSigner = 'AdditionalSigner', ConfirmationDeclarant = 'ConfirmationDeclarant', AdditionalConfirmationDeclarant = 'AdditionalConfirmationDeclarant', } export class Signer { public User: UserReference; public Person: PersonReference; public Relation: RelationReference; public ContactPerson: ContactPersonReference; public RegisteredDocument: DocumentReference; public Type: SignerType; public ClosingSentence: string; public Name: string; public Subsidiary: string; public Function: string; public Department: string; public PhoneNumber: string; public FaxNumber: string; public MobileNumber: string; public Email: string; public CustomText: string; public Signature: string[]; public SignatureVisible?: boolean; public Visible?: boolean; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class Field { public Name: string; public OldValue: string; public Value: string; public Title: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class AttachmentData { public ContentType: string; /** * Data base64-encoded zonder padding. */ public Data: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class Attachment { public Name: string; public AttachmentData: AttachmentData; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class RegistrationMetaData { /** * Hoe moet het versiebeheer worden toegepast? */ // @ApiMember(Description="Hoe moet het versiebeheer worden toegepast?") public Versioning?: VersioningType; /** * Previous document will be used for registration of a new version. */ // @ApiMember(Description="Previous document will be used for registration of a new version.") public PreviousDocument: DocumentReference; /** * Company */ // @ApiMember(Description="Company") public Company: CompanyReference; /** * Relation */ // @ApiMember(Description="Relation") public Relation: RelationReference; /** * Person */ // @ApiMember(Description="Person") public Person: PersonReference; /** * Project */ // @ApiMember(Description="Project") public Project: ProjectReference; /** * Sub projects */ // @ApiMember(AllowMultiple=true, Description="Sub projects") public SubProjects: SubProject[]; /** * Signers */ // @ApiMember(AllowMultiple=true, Description="Signers") public Signers: Signer[]; /** * Bevat velden die gebruikt worden als additionele metadata voor het document, naast de vaste koppelingen zoals gebruiker, project en relatie. */ // @ApiMember(AllowMultiple=true, Description="Bevat velden die gebruikt worden als additionele metadata voor het document, naast de vaste koppelingen zoals gebruiker, project en relatie.") public Fields: Field[]; /** * Attachments die aan de documentregistratie gekoppeld moet worden. */ // @ApiMember(AllowMultiple=true, Description="Attachments die aan de documentregistratie gekoppeld moet worden.") public Attachments: Attachment[]; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class CommonEntityBaseReference implements IEntityReference { public ID: string; public ExternalID: string; public GlobalID?: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export enum Direction { Left2Right = 0, UpLeft2DownRight = 45, Up2Down = 90, UpRight2DownLeft = 135, Right2Left = 180, DownRight2UpLeft = 225, Down2Up = 270, DownLeft2UpRight = 315, } export class Watermark { public Text: string; public FontFamilyText: string; public FontFamily: FontFamily; public Direction?: Direction; public StrokeColorText: string; public StrokeColor: Color; public FillColorText: string; public FillColor: Color; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class BatchDocument implements IDocument { /** * ConfigurationSource: DocumentgeneratorDocument of RegistratieProfiel. */ // @ApiMember(Description="ConfigurationSource: DocumentgeneratorDocument of RegistratieProfiel.", IsRequired=true) public ConfigurationSource: ConfigurationSource; /** * Set references to bind with Registration profile */ // @ApiMember(Description="Set references to bind with Registration profile", IsRequired=true) public RegistrationMetaData: RegistrationMetaData; /** * Entity instance used as data source parent, if not exists default is Document registration instance. */ // @ApiMember(Description="Entity instance used as data source parent, if not exists default is Document registration instance.") public DataSourceEntity: CommonEntityBaseReference; /** * Hier kan de (dynamische) data voor het document geplaatst worden, de data kan middels tekstblokken en placeholders worden geplaatst.Het formaat binnen CustomData staat vrij maar vereist een 'root' element. */ // @ApiMember(Description="Hier kan de (dynamische) data voor het document geplaatst worden, de data kan middels tekstblokken en placeholders worden geplaatst.Het formaat binnen CustomData staat vrij maar vereist een 'root' element.") public CustomData: string; /** * Insert a watermark into the document. */ // @ApiMember(Description="Insert a watermark into the document.") public Watermark: Watermark; /** * Type van het gegenereerde document, bijvoorbeeld: Doc, Docx, Pdf. */ // @ApiMember(Description="Type van het gegenereerde document, bijvoorbeeld: Doc, Docx, Pdf.") public OutputType: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export interface IGenerateDocumentBatch { User: UserReference; Description: string; Documents: BatchDocument[]; DontRegister: boolean; SendMail: boolean; } export interface IDocument { ConfigurationSource: ConfigurationSource; DataSourceEntity: CommonEntityBaseReference; RegistrationMetaData: RegistrationMetaData; CustomData: string; Watermark: Watermark; OutputType: string; } export interface IGenerateDocumentBatchResponse { BatchID: string; Processed: number; TrackAndTraceUrl: string; } export interface IEntityReference { GlobalID?: string; } export class GenerateDocumentBatchResponse implements IGenerateDocumentBatchResponse { /** * ID of the batch */ // @ApiMember(Description="ID of the batch", IsRequired=true) public BatchID: string; /** * Document processed count */ // @ApiMember(Description="Document processed count", IsRequired=true) public Processed: number; /** * Track and Trace url */ // @ApiMember(Description="Track and Trace url", IsRequired=true) public TrackAndTraceUrl: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } /** * Queue multiple (corporate identity) document(s) to generate later via the DigiOffice background agent. */ // @Api(Description="Queue multiple (corporate identity) document(s) to generate later via the DigiOffice background agent.") export class GenerateDocumentBatch implements IReturn, IGenerateDocumentBatch { /** * Owner of the badge (DigiOffice user) */ // @ApiMember(Description="Owner of the badge (DigiOffice user)") public User: UserReference; /** * Description of the badge */ // @ApiMember(Description="Description of the badge", IsRequired=true) public Description: string; /** * Corporate identity document(s) to be generate */ // @ApiMember(AllowMultiple=true, Description="Corporate identity document(s) to be generate", IsRequired=true) public Documents: BatchDocument[]; /** * Generated document is not registered in DigiOffice DMS. */ // @ApiMember(Description="Generated document is not registered in DigiOffice DMS.") public DontRegister: boolean; /** * Send the generated e-mail via the e-mail queue. */ // @ApiMember(Description="Send the generated e-mail via the e-mail queue.") public SendMail: boolean; public constructor(init?: Partial) { (Object as any).assign(this, init); } public getTypeName() { return 'GenerateDocumentBatch'; } public getMethod() { return 'POST'; } public createResponse() { return new GenerateDocumentBatchResponse(); } }