import { CodeStub } from './base/CodeStub.mjs'; import { HasEncryptionMetadata } from './base/HasEncryptionMetadata.mjs'; import { HasIdentifier } from './base/HasIdentifier.mjs'; import { HasMedicalLocation } from './base/HasMedicalLocation.mjs'; import { ICureDocument } from './base/ICureDocument.mjs'; import { Identifier } from './base/Identifier.mjs'; import { StoredDocument } from './base/StoredDocument.mjs'; import { Delegation } from './embed/Delegation.mjs'; import { Encryptable } from './embed/Encryptable.mjs'; import { IdentityDocumentReader } from './embed/IdentityDocumentReader.mjs'; import { DecryptedInvoicingCode, EncryptedInvoicingCode, InvoicingCode } from './embed/InvoicingCode.mjs'; import { Payment } from './embed/Payment.mjs'; import { PaymentType } from './embed/PaymentType.mjs'; import { SecurityMetadata } from './embed/SecurityMetadata.mjs'; import { Base64String } from './specializations/Base64String.mjs'; /** * * Represents an invoice. An invoice is used to bill patients, mutual funds, or paying agencies for * healthcare * services rendered. It is serialized in JSON and saved in the underlying iCure CouchDB database. * / */ export interface Invoice extends StoredDocument, ICureDocument, HasMedicalLocation, HasEncryptionMetadata, Encryptable, HasIdentifier { /** * * The timestamp (unix epoch in ms) when the invoice was drafted. */ invoiceDate: number | undefined; /** * * The timestamp (unix epoch in ms) when the invoice was sent. */ sentDate: number | undefined; /** * * The timestamp (unix epoch in ms) when the invoice was printed. */ printedDate: number | undefined; /** * * The list of invoicing codes associated with this invoice. */ invoicingCodes: Array; /** * * Map of receipt references. */ receipts: { [key: string]: string; }; /** * * Id of the recipient of the invoice. */ recipientId: string | undefined; /** * * The invoice reference number. */ invoiceReference: string | undefined; /** * * The decision reference number. */ decisionReference: string | undefined; /** * * The third party reference. */ thirdPartyReference: string | undefined; /** * * Justification for third party payment. */ thirdPartyPaymentJustification: string | undefined; /** * * Reason for third party payment. */ thirdPartyPaymentReason: string | undefined; /** * * The reason for the invoice. */ reason: string | undefined; /** * * The group id for grouping related invoices. */ groupId: string | undefined; /** * * Type of payment (cash, wired, insurance, debit card, etc.). */ paymentType: PaymentType | undefined; /** * * The amount paid. */ paid: number | undefined; /** * * List of payments made for this invoice. */ payments: Array | undefined; /** * * SSIN of the gnotion. */ gnotionSsin: string | undefined; /** * * Last name of the gnotion. */ gnotionLastName: string | undefined; /** * * First name of the gnotion. */ gnotionFirstName: string | undefined; /** * * CD-HCPARTY code of the gnotion. */ gnotionCdHcParty: string | undefined; /** * * The invoicing period. */ invoicePeriod: number | undefined; /** * * The type of care provider. */ careProviderType: string | undefined; /** * * SSIN of the internship. */ internshipSsin: string | undefined; /** * * Last name of the internship supervisor. */ internshipLastName: string | undefined; /** * * First name of the internship supervisor. */ internshipFirstName: string | undefined; /** * * CD-HCPARTY code of the internship. */ internshipCdHcParty: string | undefined; /** * * CBE number of the internship. */ internshipCbe: string | undefined; /** * * SSIN of the supervisor. */ supervisorSsin: string | undefined; /** * * Last name of the supervisor. */ supervisorLastName: string | undefined; /** * * First name of the supervisor. */ supervisorFirstName: string | undefined; /** * * CD-HCPARTY code of the supervisor. */ supervisorCdHcParty: string | undefined; /** * * CBE number of the supervisor. */ supervisorCbe: string | undefined; /** * * Error message if any. */ error: string | undefined; /** * * Name of the encounter location. */ encounterLocationName: string | undefined; /** * * Norm of the encounter location. */ encounterLocationNorm: number | undefined; /** * * Justification for long delay. */ longDelayJustification: number | undefined; /** * * Id of the corrective invoice. */ correctiveInvoiceId: string | undefined; /** * * Id of the corrected invoice. */ correctedInvoiceId: string | undefined; /** * * Whether this invoice is a credit note. */ creditNote: boolean | undefined; /** * * Id of the related invoice for the credit note. */ creditNoteRelatedInvoiceId: string | undefined; /** * * Identity document reader information. */ idDocument: IdentityDocumentReader | undefined; /** * * The admission date for hospitalization invoices. */ admissionDate: number | undefined; /** * * Service code of the location. */ locationService: number | undefined; /** * * The reason for cancellation. */ cancelReason: string | undefined; /** * * The date of cancellation. */ cancelDate: number | undefined; /** * * Extra options for the invoice. */ options: { [key: string]: string; }; readonly isEncrypted: boolean; toJSON(): object; } /** * * Represents an invoice. An invoice is used to bill patients, mutual funds, or paying agencies for * healthcare * services rendered. It is serialized in JSON and saved in the underlying iCure CouchDB database. * / */ export declare class DecryptedInvoice { /** * * The Id of the Invoice. We encourage using either a v4 UUID or a HL7 Id. */ id: string; /** * * The revision of the invoice in the database, used for conflict management / optimistic locking. */ rev: string | undefined; /** * * The identifiers of the invoice. */ identifier: Array; /** * * The timestamp (unix epoch in ms) of creation. */ created: number | undefined; /** * * The timestamp (unix epoch in ms) of the latest modification. */ modified: number | undefined; /** * * The id of the User that created this invoice. */ author: string | undefined; /** * * The id of the HealthcareParty that is responsible for this invoice. */ responsible: string | undefined; /** * * Tags that qualify the invoice as being member of a certain class. */ tags: Array; /** * * Codes that identify or qualify this particular invoice. */ codes: Array; /** * * Hard delete (unix epoch in ms) timestamp of the object. */ deletionDate: number | undefined; /** * * The timestamp (unix epoch in ms) when the invoice was drafted. */ invoiceDate: number | undefined; /** * * The timestamp (unix epoch in ms) when the invoice was sent. */ sentDate: number | undefined; /** * * The timestamp (unix epoch in ms) when the invoice was printed. */ printedDate: number | undefined; /** * * The list of invoicing codes associated with this invoice. */ invoicingCodes: Array; /** * * Map of receipt references. */ receipts: { [key: string]: string; }; /** * * Id of the recipient of the invoice. */ recipientId: string | undefined; /** * * The invoice reference number. */ invoiceReference: string | undefined; /** * * The decision reference number. */ decisionReference: string | undefined; /** * * The third party reference. */ thirdPartyReference: string | undefined; /** * * Justification for third party payment. */ thirdPartyPaymentJustification: string | undefined; /** * * Reason for third party payment. */ thirdPartyPaymentReason: string | undefined; /** * * The reason for the invoice. */ reason: string | undefined; /** * * The group id for grouping related invoices. */ groupId: string | undefined; /** * * Type of payment (cash, wired, insurance, debit card, etc.). */ paymentType: PaymentType | undefined; /** * * The amount paid. */ paid: number | undefined; /** * * List of payments made for this invoice. */ payments: Array | undefined; /** * * SSIN of the gnotion. */ gnotionSsin: string | undefined; /** * * Last name of the gnotion. */ gnotionLastName: string | undefined; /** * * First name of the gnotion. */ gnotionFirstName: string | undefined; /** * * CD-HCPARTY code of the gnotion. */ gnotionCdHcParty: string | undefined; /** * * The invoicing period. */ invoicePeriod: number | undefined; /** * * The type of care provider. */ careProviderType: string | undefined; /** * * SSIN of the internship. */ internshipSsin: string | undefined; /** * * Last name of the internship supervisor. */ internshipLastName: string | undefined; /** * * First name of the internship supervisor. */ internshipFirstName: string | undefined; /** * * CD-HCPARTY code of the internship. */ internshipCdHcParty: string | undefined; /** * * CBE number of the internship. */ internshipCbe: string | undefined; /** * * SSIN of the supervisor. */ supervisorSsin: string | undefined; /** * * Last name of the supervisor. */ supervisorLastName: string | undefined; /** * * First name of the supervisor. */ supervisorFirstName: string | undefined; /** * * CD-HCPARTY code of the supervisor. */ supervisorCdHcParty: string | undefined; /** * * CBE number of the supervisor. */ supervisorCbe: string | undefined; /** * * Error message if any. */ error: string | undefined; /** * * Name of the encounter location. */ encounterLocationName: string | undefined; /** * * Norm of the encounter location. */ encounterLocationNorm: number | undefined; /** * * Justification for long delay. */ longDelayJustification: number | undefined; /** * * Id of the corrective invoice. */ correctiveInvoiceId: string | undefined; /** * * Id of the corrected invoice. */ correctedInvoiceId: string | undefined; /** * * Whether this invoice is a credit note. */ creditNote: boolean | undefined; /** * * Id of the related invoice for the credit note. */ creditNoteRelatedInvoiceId: string | undefined; /** * * Identity document reader information. */ idDocument: IdentityDocumentReader | undefined; /** * * The admission date for hospitalization invoices. */ admissionDate: number | undefined; /** * * Service code of the location. */ locationService: number | undefined; /** * * The reason for cancellation. */ cancelReason: string | undefined; /** * * The date of cancellation. */ cancelDate: number | undefined; /** * * Extra options for the invoice. */ options: { [key: string]: string; }; /** * * The secret patient key, encrypted in the patient's own AES key. */ secretForeignKeys: Array; /** * * The patient id encrypted in the delegates' AES keys. */ cryptedForeignKeys: { [key: string]: Array; }; /** * * The delegations giving access to connected healthcare information. */ delegations: { [key: string]: Array; }; /** * * The keys used to encrypt this entity when stored encrypted. */ encryptionKeys: { [key: string]: Array; }; /** * * The base64-encoded encrypted fields of this entity. */ encryptedSelf: Base64String | undefined; /** * * The security metadata of the entity. */ securityMetadata: SecurityMetadata | undefined; readonly isEncrypted: false; constructor(partial: Partial); toJSON(): object; static fromJSON(json: any, ignoreUnknownKeys?: boolean, path?: Array): DecryptedInvoice; } /** * * Represents an invoice. An invoice is used to bill patients, mutual funds, or paying agencies for * healthcare * services rendered. It is serialized in JSON and saved in the underlying iCure CouchDB database. * / */ export declare class EncryptedInvoice { /** * * The Id of the Invoice. We encourage using either a v4 UUID or a HL7 Id. */ id: string; /** * * The revision of the invoice in the database, used for conflict management / optimistic locking. */ rev: string | undefined; /** * * The identifiers of the invoice. */ identifier: Array; /** * * The timestamp (unix epoch in ms) of creation. */ created: number | undefined; /** * * The timestamp (unix epoch in ms) of the latest modification. */ modified: number | undefined; /** * * The id of the User that created this invoice. */ author: string | undefined; /** * * The id of the HealthcareParty that is responsible for this invoice. */ responsible: string | undefined; /** * * Tags that qualify the invoice as being member of a certain class. */ tags: Array; /** * * Codes that identify or qualify this particular invoice. */ codes: Array; /** * * Hard delete (unix epoch in ms) timestamp of the object. */ deletionDate: number | undefined; /** * * The timestamp (unix epoch in ms) when the invoice was drafted. */ invoiceDate: number | undefined; /** * * The timestamp (unix epoch in ms) when the invoice was sent. */ sentDate: number | undefined; /** * * The timestamp (unix epoch in ms) when the invoice was printed. */ printedDate: number | undefined; /** * * The list of invoicing codes associated with this invoice. */ invoicingCodes: Array; /** * * Map of receipt references. */ receipts: { [key: string]: string; }; /** * * Id of the recipient of the invoice. */ recipientId: string | undefined; /** * * The invoice reference number. */ invoiceReference: string | undefined; /** * * The decision reference number. */ decisionReference: string | undefined; /** * * The third party reference. */ thirdPartyReference: string | undefined; /** * * Justification for third party payment. */ thirdPartyPaymentJustification: string | undefined; /** * * Reason for third party payment. */ thirdPartyPaymentReason: string | undefined; /** * * The reason for the invoice. */ reason: string | undefined; /** * * The group id for grouping related invoices. */ groupId: string | undefined; /** * * Type of payment (cash, wired, insurance, debit card, etc.). */ paymentType: PaymentType | undefined; /** * * The amount paid. */ paid: number | undefined; /** * * List of payments made for this invoice. */ payments: Array | undefined; /** * * SSIN of the gnotion. */ gnotionSsin: string | undefined; /** * * Last name of the gnotion. */ gnotionLastName: string | undefined; /** * * First name of the gnotion. */ gnotionFirstName: string | undefined; /** * * CD-HCPARTY code of the gnotion. */ gnotionCdHcParty: string | undefined; /** * * The invoicing period. */ invoicePeriod: number | undefined; /** * * The type of care provider. */ careProviderType: string | undefined; /** * * SSIN of the internship. */ internshipSsin: string | undefined; /** * * Last name of the internship supervisor. */ internshipLastName: string | undefined; /** * * First name of the internship supervisor. */ internshipFirstName: string | undefined; /** * * CD-HCPARTY code of the internship. */ internshipCdHcParty: string | undefined; /** * * CBE number of the internship. */ internshipCbe: string | undefined; /** * * SSIN of the supervisor. */ supervisorSsin: string | undefined; /** * * Last name of the supervisor. */ supervisorLastName: string | undefined; /** * * First name of the supervisor. */ supervisorFirstName: string | undefined; /** * * CD-HCPARTY code of the supervisor. */ supervisorCdHcParty: string | undefined; /** * * CBE number of the supervisor. */ supervisorCbe: string | undefined; /** * * Error message if any. */ error: string | undefined; /** * * Name of the encounter location. */ encounterLocationName: string | undefined; /** * * Norm of the encounter location. */ encounterLocationNorm: number | undefined; /** * * Justification for long delay. */ longDelayJustification: number | undefined; /** * * Id of the corrective invoice. */ correctiveInvoiceId: string | undefined; /** * * Id of the corrected invoice. */ correctedInvoiceId: string | undefined; /** * * Whether this invoice is a credit note. */ creditNote: boolean | undefined; /** * * Id of the related invoice for the credit note. */ creditNoteRelatedInvoiceId: string | undefined; /** * * Identity document reader information. */ idDocument: IdentityDocumentReader | undefined; /** * * The admission date for hospitalization invoices. */ admissionDate: number | undefined; /** * * Service code of the location. */ locationService: number | undefined; /** * * The reason for cancellation. */ cancelReason: string | undefined; /** * * The date of cancellation. */ cancelDate: number | undefined; /** * * Extra options for the invoice. */ options: { [key: string]: string; }; /** * * The secret patient key, encrypted in the patient's own AES key. */ secretForeignKeys: Array; /** * * The patient id encrypted in the delegates' AES keys. */ cryptedForeignKeys: { [key: string]: Array; }; /** * * The delegations giving access to connected healthcare information. */ delegations: { [key: string]: Array; }; /** * * The keys used to encrypt this entity when stored encrypted. */ encryptionKeys: { [key: string]: Array; }; /** * * The base64-encoded encrypted fields of this entity. */ encryptedSelf: Base64String | undefined; /** * * The security metadata of the entity. */ securityMetadata: SecurityMetadata | undefined; readonly isEncrypted: true; constructor(partial: Partial); toJSON(): object; static fromJSON(json: any, ignoreUnknownKeys?: boolean, path?: Array): EncryptedInvoice; }