UNPKG

@stafyniaksacha/facturx

Version:

Factur-X and Order-X generation library for European e-invoicing standard

1,167 lines (1,160 loc) 40.6 kB
/** * QualifiedDataType classes for Factur-X * Based on urn:un:unece:uncefact:data:standard:QualifiedDataType:100 */ /** * Accounting account type code content */ declare class AccountingAccountTypeCodeType { constructor({ value }: { value: string; }); value: string; } /** * Allowance charge reason code */ declare class AllowanceChargeReasonCodeType { constructor({ value }: { value: string; }); value: string; } /** * Contact type code */ declare class ContactTypeCodeType { constructor({ value }: { value: string; }); value: string; } /** * Country ID code */ declare class CountryIDType { constructor({ value }: { value: string; }); value: string; } /** * Currency code */ declare class CurrencyCodeType { constructor({ value }: { value: string; }); value: string; } /** * Delivery terms code */ declare class DeliveryTermsCodeType { constructor({ value }: { value: string; }); value: string; } /** * Document code */ declare class DocumentCodeType { constructor({ value }: { value: string; }); value: string; } /** * Formatted date time type */ declare class FormattedDateTimeType { constructor({ dateTimeString, format }: { dateTimeString: string; format: string; }); dateTimeString: string; format: string; } /** * Line status code */ declare class LineStatusCodeType { constructor({ value }: { value: string; }); value: string; } /** * Party role code */ declare class PartyRoleCodeType { constructor({ value }: { value: string; }); value: string; } /** * Payment means code */ declare class PaymentMeansCodeType { constructor({ value }: { value: string; }); value: string; } /** * Reference code */ declare class ReferenceCodeType { constructor({ value }: { value: string; }); value: string; } /** * Tax category code */ declare class TaxCategoryCodeType { constructor({ value }: { value: string; }); value: string; } /** * Tax type code */ declare class TaxTypeCodeType { constructor({ value }: { value: string; }); value: string; } /** * Time reference code */ declare class TimeReferenceCodeType { constructor({ value }: { value: string; }); value: string; } /** * Transport mode code */ declare class TransportModeCodeType { constructor({ value }: { value: string; }); value: string; } /** * UnqualifiedDataType classes for Factur-X * Based on urn:un:unece:uncefact:data:standard:UnqualifiedDataType:100 */ /** * Represents a monetary amount with optional currency */ declare class AmountType { constructor({ value, currencyID }: { value: number; currencyID?: string; }); value: number; currencyID?: string; } /** * Represents binary data with required MIME type and filename */ declare class BinaryObjectType { constructor({ value, mimeCode, filename }: { value: string; mimeCode: string; filename: string; }); value: string; mimeCode: string; filename: string; } /** * Represents a code with optional list identification */ declare class CodeType { constructor({ value, listID, listVersionID }: { value: string; listID?: string; listVersionID?: string; }); value: string; listID?: string; listVersionID?: string; } /** * Represents a datetime with format */ declare class DateTimeType { constructor({ dateTimeString, format }: { dateTimeString: string; format: string; }); dateTimeString: string; format: string; } /** * Represents a date with format */ declare class DateType { constructor({ dateString, format }: { dateString: string; format: string; }); dateString: string; format: string; } /** * Represents an identifier with optional scheme */ declare class IDType { constructor({ value, schemeID }: { value: string; schemeID?: string; }); value: string; schemeID?: string; } /** * Represents a boolean indicator */ declare class IndicatorType { constructor({ indicator }: { indicator: boolean; }); indicator: boolean; } /** * Represents a measure with optional unit code */ declare class MeasureType { constructor({ value, unitCode }: { value: number; unitCode?: string; }); value: number; unitCode?: string; } /** * Represents a numeric value */ declare class NumericType { constructor({ value }: { value: number; }); value: number; } /** * Represents a percentage value */ declare class PercentType { constructor({ value }: { value: number; }); value: number; } /** * Represents a quantity with optional unit code */ declare class QuantityType { constructor({ value, unitCode }: { value: number; unitCode?: string; }); value: number; unitCode?: string; } /** * Represents a rate value */ declare class RateType { constructor({ value }: { value: number; }); value: number; } /** * Represents text content */ declare class TextType { constructor({ value }: { value: string; }); value: string; } /** * ReusableAggregateBusinessInformationEntity classes for Factur-X * Based on urn:un:unece:uncefact:data:standard:ReusableAggregateBusinessInformationEntity:100 */ /** * Specified period type */ declare class SpecifiedPeriodType { constructor({ description, startDateTime, endDateTime, completeDateTime, }: { description?: TextType; startDateTime?: DateTimeType; endDateTime?: DateTimeType; completeDateTime?: DateTimeType; }); description?: TextType; startDateTime?: DateTimeType; endDateTime?: DateTimeType; completeDateTime?: DateTimeType; } /** * Referenced document type */ declare class ReferencedDocumentType { constructor({ issuerAssignedID, uriID, lineID, typeCode, name, attachmentBinaryObject, referenceTypeCode, formattedIssueDateTime, }: { issuerAssignedID?: IDType; uriID?: IDType; lineID?: IDType; typeCode?: DocumentCodeType; name?: TextType[]; attachmentBinaryObject?: BinaryObjectType; referenceTypeCode?: ReferenceCodeType; formattedIssueDateTime?: FormattedDateTimeType; }); issuerAssignedID?: IDType; uriID?: IDType; lineID?: IDType; typeCode?: DocumentCodeType; name?: TextType[]; attachmentBinaryObject?: BinaryObjectType; referenceTypeCode?: ReferenceCodeType; formattedIssueDateTime?: FormattedDateTimeType; } /** * Trade delivery terms type */ declare class TradeDeliveryTermsType { constructor({ deliveryTypeCode, }: { deliveryTypeCode: DeliveryTermsCodeType; }); deliveryTypeCode: DeliveryTermsCodeType; } /** * Procuring project type */ declare class ProcuringProjectType { constructor({ id, name, }: { id: IDType; name: TextType; }); id: IDType; name: TextType; } /** * Advance payment type */ declare class AdvancePaymentType { constructor({ paidAmount, formattedReceivedDateTime, includedTradeTax, }: { paidAmount: AmountType; formattedReceivedDateTime?: FormattedDateTimeType; includedTradeTax: TradeTaxType[]; }); paidAmount: AmountType; formattedReceivedDateTime?: FormattedDateTimeType; includedTradeTax: TradeTaxType[]; } /** * Creditor financial account type */ declare class CreditorFinancialAccountType { constructor({ ibanID, accountName, proprietaryID, }: { ibanID?: IDType; accountName?: TextType; proprietaryID?: IDType; }); ibanID?: IDType; accountName?: TextType; proprietaryID?: IDType; } /** * Creditor financial institution type */ declare class CreditorFinancialInstitutionType { constructor({ bicID }: { bicID: IDType; }); bicID: IDType; } /** * Debtor financial account type */ declare class DebtorFinancialAccountType { constructor({ ibanID }: { ibanID: IDType; }); ibanID: IDType; } /** * Document context parameter type */ declare class DocumentContextParameterType { constructor({ id }: { id: IDType; }); id: IDType; } /** * Note type */ declare class NoteType { constructor({ contentCode, content, subjectCode, }: { contentCode?: CodeType; content: TextType; subjectCode?: CodeType; }); contentCode?: CodeType; content: TextType; subjectCode?: CodeType; } /** * Document line document type */ declare class DocumentLineDocumentType { constructor({ lineID, parentLineID, lineStatusCode, lineStatusReasonCode, includedNote, }: { lineID: IDType; parentLineID?: IDType; lineStatusCode?: LineStatusCodeType; lineStatusReasonCode?: CodeType; includedNote?: NoteType[]; }); lineID: IDType; parentLineID?: IDType; lineStatusCode?: LineStatusCodeType; lineStatusReasonCode?: CodeType; includedNote?: NoteType[]; } /** * Trade tax type */ declare class TradeTaxType { constructor({ calculatedAmount, typeCode, exemptionReason, basisAmount, lineTotalBasisAmount, allowanceChargeBasisAmount, categoryCode, exemptionReasonCode, taxPointDate, dueDateTypeCode, rateApplicablePercent, }: { calculatedAmount?: AmountType; typeCode?: TaxTypeCodeType; exemptionReason?: TextType; basisAmount?: AmountType; lineTotalBasisAmount?: AmountType; allowanceChargeBasisAmount?: AmountType; categoryCode: TaxCategoryCodeType; exemptionReasonCode?: CodeType; taxPointDate?: DateType; dueDateTypeCode?: TimeReferenceCodeType; rateApplicablePercent?: PercentType; }); calculatedAmount?: AmountType; typeCode?: TaxTypeCodeType; exemptionReason?: TextType; basisAmount?: AmountType; lineTotalBasisAmount?: AmountType; allowanceChargeBasisAmount?: AmountType; categoryCode: TaxCategoryCodeType; exemptionReasonCode?: CodeType; taxPointDate?: DateType; dueDateTypeCode?: TimeReferenceCodeType; rateApplicablePercent?: PercentType; } /** * Trade address type */ declare class TradeAddressType { constructor({ postcodeCode, lineOne, lineTwo, lineThree, cityName, countryID, countrySubDivisionName, }: { postcodeCode?: CodeType; lineOne?: TextType; lineTwo?: TextType; lineThree?: TextType; cityName?: TextType; countryID: CountryIDType; countrySubDivisionName?: TextType[]; }); postcodeCode?: CodeType; lineOne?: TextType; lineTwo?: TextType; lineThree?: TextType; cityName?: TextType; countryID: CountryIDType; countrySubDivisionName?: TextType[]; } /** * Universal communication type */ declare class UniversalCommunicationType { constructor({ uriID, completeNumber, }: { uriID?: IDType; completeNumber?: TextType; }); uriID?: IDType; completeNumber?: TextType; } /** * Trade contact type */ declare class TradeContactType { constructor({ personName, departmentName, typeCode, telephoneUniversalCommunication, faxUniversalCommunication, emailURIUniversalCommunication, }: { personName?: TextType; departmentName?: TextType; typeCode?: ContactTypeCodeType; telephoneUniversalCommunication?: UniversalCommunicationType; faxUniversalCommunication?: UniversalCommunicationType; emailURIUniversalCommunication?: UniversalCommunicationType; }); personName?: TextType; departmentName?: TextType; typeCode?: ContactTypeCodeType; telephoneUniversalCommunication?: UniversalCommunicationType; faxUniversalCommunication?: UniversalCommunicationType; emailURIUniversalCommunication?: UniversalCommunicationType; } /** * Legal organization type */ declare class LegalOrganizationType { constructor({ id, tradingBusinessName, postalTradeAddress, }: { id?: IDType; tradingBusinessName?: TextType; postalTradeAddress?: TradeAddressType; }); id?: IDType; tradingBusinessName?: TextType; postalTradeAddress?: TradeAddressType; } /** * Tax registration type */ declare class TaxRegistrationType { constructor({ id }: { id: IDType; }); id: IDType; } /** * Trade party type */ declare class TradePartyType { constructor({ id, globalID, name, roleCode, description, specifiedLegalOrganization, definedTradeContact, postalTradeAddress, uriUniversalCommunication, specifiedTaxRegistration, }: { id?: IDType[]; globalID?: IDType[]; name?: TextType; roleCode?: PartyRoleCodeType; description?: TextType; specifiedLegalOrganization?: LegalOrganizationType; definedTradeContact?: TradeContactType[]; postalTradeAddress?: TradeAddressType; uriUniversalCommunication?: UniversalCommunicationType; specifiedTaxRegistration?: TaxRegistrationType[]; }); id?: IDType[]; globalID?: IDType[]; name?: TextType; roleCode?: PartyRoleCodeType; description?: TextType; specifiedLegalOrganization?: LegalOrganizationType; definedTradeContact?: TradeContactType[]; postalTradeAddress?: TradeAddressType; uriUniversalCommunication?: UniversalCommunicationType; specifiedTaxRegistration?: TaxRegistrationType[]; } /** * Supply chain event type */ declare class SupplyChainEventType { constructor({ occurrenceDateTime, }: { occurrenceDateTime: DateTimeType; }); occurrenceDateTime: DateTimeType; } /** * Supply chain consignment type */ declare class SupplyChainConsignmentType { constructor({ specifiedLogisticsTransportMovement, }: { specifiedLogisticsTransportMovement?: LogisticsTransportMovementType[]; }); specifiedLogisticsTransportMovement?: LogisticsTransportMovementType[]; } /** * Logistics transport movement type */ declare class LogisticsTransportMovementType { constructor({ modeCode, }: { modeCode: TransportModeCodeType; }); modeCode: TransportModeCodeType; } /** * Trade accounting account type */ declare class TradeAccountingAccountType { constructor({ id, typeCode, }: { id: IDType; typeCode?: AccountingAccountTypeCodeType; }); id: IDType; typeCode?: AccountingAccountTypeCodeType; } /** * Trade currency exchange type */ declare class TradeCurrencyExchangeType { constructor({ sourceCurrencyCode, targetCurrencyCode, conversionRate, conversionRateDateTime, }: { sourceCurrencyCode: CurrencyCodeType; targetCurrencyCode: CurrencyCodeType; conversionRate: RateType; conversionRateDateTime?: DateTimeType; }); sourceCurrencyCode: CurrencyCodeType; targetCurrencyCode: CurrencyCodeType; conversionRate: RateType; conversionRateDateTime?: DateTimeType; } /** * Trade allowance charge type */ declare class TradeAllowanceChargeType { constructor({ chargeIndicator, sequenceNumeric, calculationPercent, basisAmount, basisQuantity, actualAmount, reasonCode, reason, categoryTradeTax, }: { chargeIndicator: IndicatorType; sequenceNumeric?: NumericType; calculationPercent?: PercentType; basisAmount?: AmountType; basisQuantity?: QuantityType; actualAmount: AmountType; reasonCode?: AllowanceChargeReasonCodeType; reason?: TextType; categoryTradeTax?: TradeTaxType; }); chargeIndicator: IndicatorType; sequenceNumeric?: NumericType; calculationPercent?: PercentType; basisAmount?: AmountType; basisQuantity?: QuantityType; actualAmount: AmountType; reasonCode?: AllowanceChargeReasonCodeType; reason?: TextType; categoryTradeTax?: TradeTaxType; } /** * Logistics service charge type */ declare class LogisticsServiceChargeType { constructor({ description, appliedAmount, appliedTradeTax, }: { description: TextType; appliedAmount: AmountType; appliedTradeTax?: TradeTaxType[]; }); description: TextType; appliedAmount: AmountType; appliedTradeTax?: TradeTaxType[]; } /** * Trade payment penalty terms type */ declare class TradePaymentPenaltyTermsType { constructor({ basisDateTime, basisPeriodMeasure, basisAmount, calculationPercent, actualPenaltyAmount, }: { basisDateTime?: DateTimeType; basisPeriodMeasure?: MeasureType; basisAmount?: AmountType; calculationPercent?: PercentType; actualPenaltyAmount?: AmountType; }); basisDateTime?: DateTimeType; basisPeriodMeasure?: MeasureType; basisAmount?: AmountType; calculationPercent?: PercentType; actualPenaltyAmount?: AmountType; } /** * Trade payment discount terms type */ declare class TradePaymentDiscountTermsType { constructor({ basisDateTime, basisPeriodMeasure, basisAmount, calculationPercent, actualDiscountAmount, }: { basisDateTime?: DateTimeType; basisPeriodMeasure?: MeasureType; basisAmount?: AmountType; calculationPercent?: PercentType; actualDiscountAmount?: AmountType; }); basisDateTime?: DateTimeType; basisPeriodMeasure?: MeasureType; basisAmount?: AmountType; calculationPercent?: PercentType; actualDiscountAmount?: AmountType; } /** * Trade payment terms type */ declare class TradePaymentTermsType { constructor({ description, dueDateDateTime, directDebitMandateID, partialPaymentAmount, applicableTradePaymentPenaltyTerms, applicableTradePaymentDiscountTerms, payeeTradeParty, }: { description?: TextType; dueDateDateTime?: DateTimeType; directDebitMandateID?: IDType; partialPaymentAmount?: AmountType; applicableTradePaymentPenaltyTerms?: TradePaymentPenaltyTermsType; applicableTradePaymentDiscountTerms?: TradePaymentDiscountTermsType; payeeTradeParty?: TradePartyType; }); description?: TextType; dueDateDateTime?: DateTimeType; directDebitMandateID?: IDType; partialPaymentAmount?: AmountType; applicableTradePaymentPenaltyTerms?: TradePaymentPenaltyTermsType; applicableTradePaymentDiscountTerms?: TradePaymentDiscountTermsType; payeeTradeParty?: TradePartyType; } /** * Trade settlement financial card type */ declare class TradeSettlementFinancialCardType { constructor({ id, cardholderName, }: { id: IDType; cardholderName?: TextType; }); id: IDType; cardholderName?: TextType; } /** * Trade settlement payment means type */ declare class TradeSettlementPaymentMeansType { constructor({ typeCode, information, applicableTradeSettlementFinancialCard, payerPartyDebtorFinancialAccount, payeePartyCreditorFinancialAccount, payeeSpecifiedCreditorFinancialInstitution, }: { typeCode: PaymentMeansCodeType; information?: TextType; applicableTradeSettlementFinancialCard?: TradeSettlementFinancialCardType; payerPartyDebtorFinancialAccount?: DebtorFinancialAccountType; payeePartyCreditorFinancialAccount?: CreditorFinancialAccountType; payeeSpecifiedCreditorFinancialInstitution?: CreditorFinancialInstitutionType; }); typeCode: PaymentMeansCodeType; information?: TextType; applicableTradeSettlementFinancialCard?: TradeSettlementFinancialCardType; payerPartyDebtorFinancialAccount?: DebtorFinancialAccountType; payeePartyCreditorFinancialAccount?: CreditorFinancialAccountType; payeeSpecifiedCreditorFinancialInstitution?: CreditorFinancialInstitutionType; } /** * Trade settlement header monetary summation type */ declare class TradeSettlementHeaderMonetarySummationType { constructor({ lineTotalAmount, chargeTotalAmount, allowanceTotalAmount, taxBasisTotalAmount, taxTotalAmount, roundingAmount, grandTotalAmount, totalPrepaidAmount, duePayableAmount, }: { lineTotalAmount: AmountType; chargeTotalAmount?: AmountType; allowanceTotalAmount?: AmountType; taxBasisTotalAmount: AmountType[]; taxTotalAmount?: AmountType[]; roundingAmount?: AmountType; grandTotalAmount: AmountType[]; totalPrepaidAmount?: AmountType; duePayableAmount: AmountType; }); lineTotalAmount: AmountType; chargeTotalAmount?: AmountType; allowanceTotalAmount?: AmountType; taxBasisTotalAmount: AmountType[]; taxTotalAmount?: AmountType[]; roundingAmount?: AmountType; grandTotalAmount: AmountType[]; totalPrepaidAmount?: AmountType; duePayableAmount: AmountType; } /** * Product characteristic type */ declare class ProductCharacteristicType { constructor({ typeCode, description, valueMeasure, value, }: { typeCode?: CodeType; description: TextType; valueMeasure?: MeasureType; value: TextType; }); typeCode?: CodeType; description: TextType; valueMeasure?: MeasureType; value: TextType; } /** * Product classification type */ declare class ProductClassificationType { constructor({ classCode, className, }: { classCode?: CodeType; className?: TextType; }); classCode?: CodeType; className?: TextType; } /** * Trade product instance type */ declare class TradeProductInstanceType { constructor({ batchID, supplierAssignedSerialID, }: { batchID?: IDType; supplierAssignedSerialID?: IDType; }); batchID?: IDType; supplierAssignedSerialID?: IDType; } /** * Trade country type */ declare class TradeCountryType { constructor({ id, }: { id?: CountryIDType; }); id?: CountryIDType; } /** * Referenced product type */ declare class ReferencedProductType { constructor({ id, globalID, sellerAssignedID, buyerAssignedID, industryAssignedID, name, description, unitQuantity, }: { id?: IDType; globalID?: IDType[]; sellerAssignedID?: IDType; buyerAssignedID?: IDType; industryAssignedID?: IDType; name: TextType; description?: TextType; unitQuantity?: QuantityType; }); id?: IDType; globalID?: IDType[]; sellerAssignedID?: IDType; buyerAssignedID?: IDType; industryAssignedID?: IDType; name: TextType; description?: TextType; unitQuantity?: QuantityType; } /** * Trade product type */ declare class TradeProductType { constructor({ id, globalID, sellerAssignedID, buyerAssignedID, name, description, applicableProductCharacteristic, designatedProductClassification, individualTradeProductInstance, originTradeCountry, includedReferencedProduct, }: { id?: IDType; globalID?: IDType; sellerAssignedID?: IDType; buyerAssignedID?: IDType; name: TextType; description?: TextType; applicableProductCharacteristic?: ProductCharacteristicType[]; designatedProductClassification?: ProductClassificationType[]; individualTradeProductInstance?: TradeProductInstanceType[]; originTradeCountry?: TradeCountryType; includedReferencedProduct?: ReferencedProductType[]; }); id?: IDType; globalID?: IDType; sellerAssignedID?: IDType; buyerAssignedID?: IDType; name: TextType; description?: TextType; applicableProductCharacteristic?: ProductCharacteristicType[]; designatedProductClassification?: ProductClassificationType[]; individualTradeProductInstance?: TradeProductInstanceType[]; originTradeCountry?: TradeCountryType; includedReferencedProduct?: ReferencedProductType[]; } /** * Trade price type */ declare class TradePriceType { constructor({ chargeAmount, basisQuantity, appliedTradeAllowanceCharge, includedTradeTax, }: { chargeAmount: AmountType; basisQuantity?: QuantityType; appliedTradeAllowanceCharge?: TradeAllowanceChargeType[]; includedTradeTax?: TradeTaxType; }); chargeAmount: AmountType; basisQuantity?: QuantityType; appliedTradeAllowanceCharge?: TradeAllowanceChargeType[]; includedTradeTax?: TradeTaxType; } /** * Line trade agreement type */ declare class LineTradeAgreementType { constructor({ buyerOrderReferencedDocument, quotationReferencedDocument, contractReferencedDocument, additionalReferencedDocument, grossPriceProductTradePrice, netPriceProductTradePrice, ultimateCustomerOrderReferencedDocument, }: { buyerOrderReferencedDocument?: ReferencedDocumentType; quotationReferencedDocument?: ReferencedDocumentType; contractReferencedDocument?: ReferencedDocumentType; additionalReferencedDocument?: ReferencedDocumentType[]; grossPriceProductTradePrice?: TradePriceType; netPriceProductTradePrice: TradePriceType; ultimateCustomerOrderReferencedDocument?: ReferencedDocumentType[]; }); buyerOrderReferencedDocument?: ReferencedDocumentType; quotationReferencedDocument?: ReferencedDocumentType; contractReferencedDocument?: ReferencedDocumentType; additionalReferencedDocument?: ReferencedDocumentType[]; grossPriceProductTradePrice?: TradePriceType; netPriceProductTradePrice: TradePriceType; ultimateCustomerOrderReferencedDocument?: ReferencedDocumentType[]; } /** * Line trade delivery type */ declare class LineTradeDeliveryType { constructor({ billedQuantity, chargeFreeQuantity, packageQuantity, shipToTradeParty, ultimateShipToTradeParty, actualDeliverySupplyChainEvent, despatchAdviceReferencedDocument, receivingAdviceReferencedDocument, deliveryNoteReferencedDocument, }: { billedQuantity: QuantityType; chargeFreeQuantity?: QuantityType; packageQuantity?: QuantityType; shipToTradeParty?: TradePartyType; ultimateShipToTradeParty?: TradePartyType; actualDeliverySupplyChainEvent?: SupplyChainEventType; despatchAdviceReferencedDocument?: ReferencedDocumentType; receivingAdviceReferencedDocument?: ReferencedDocumentType; deliveryNoteReferencedDocument?: ReferencedDocumentType; }); billedQuantity: QuantityType; chargeFreeQuantity?: QuantityType; packageQuantity?: QuantityType; shipToTradeParty?: TradePartyType; ultimateShipToTradeParty?: TradePartyType; actualDeliverySupplyChainEvent?: SupplyChainEventType; despatchAdviceReferencedDocument?: ReferencedDocumentType; receivingAdviceReferencedDocument?: ReferencedDocumentType; deliveryNoteReferencedDocument?: ReferencedDocumentType; } /** * Trade settlement line monetary summation type */ declare class TradeSettlementLineMonetarySummationType { constructor({ lineTotalAmount, chargeTotalAmount, allowanceTotalAmount, taxTotalAmount, grandTotalAmount, totalAllowanceChargeAmount, }: { lineTotalAmount: AmountType; chargeTotalAmount?: AmountType; allowanceTotalAmount?: AmountType; taxTotalAmount?: AmountType; grandTotalAmount?: AmountType; totalAllowanceChargeAmount?: AmountType; }); lineTotalAmount: AmountType; chargeTotalAmount?: AmountType; allowanceTotalAmount?: AmountType; taxTotalAmount?: AmountType; grandTotalAmount?: AmountType; totalAllowanceChargeAmount?: AmountType; } /** * Line trade settlement type */ declare class LineTradeSettlementType { constructor({ applicableTradeTax, billingSpecifiedPeriod, specifiedTradeAllowanceCharge, specifiedTradeSettlementLineMonetarySummation, invoiceReferencedDocument, additionalReferencedDocument, receivableSpecifiedTradeAccountingAccount, }: { applicableTradeTax: TradeTaxType[]; billingSpecifiedPeriod?: SpecifiedPeriodType; specifiedTradeAllowanceCharge?: TradeAllowanceChargeType[]; specifiedTradeSettlementLineMonetarySummation: TradeSettlementLineMonetarySummationType; invoiceReferencedDocument?: ReferencedDocumentType; additionalReferencedDocument?: ReferencedDocumentType[]; receivableSpecifiedTradeAccountingAccount?: TradeAccountingAccountType; }); applicableTradeTax: TradeTaxType[]; billingSpecifiedPeriod?: SpecifiedPeriodType; specifiedTradeAllowanceCharge?: TradeAllowanceChargeType[]; specifiedTradeSettlementLineMonetarySummation: TradeSettlementLineMonetarySummationType; invoiceReferencedDocument?: ReferencedDocumentType; additionalReferencedDocument?: ReferencedDocumentType[]; receivableSpecifiedTradeAccountingAccount?: TradeAccountingAccountType; } /** * Supply chain trade line item type */ declare class SupplyChainTradeLineItemType { constructor({ associatedDocumentLineDocument, specifiedTradeProduct, specifiedLineTradeAgreement, specifiedLineTradeDelivery, specifiedLineTradeSettlement, }: { associatedDocumentLineDocument: DocumentLineDocumentType; specifiedTradeProduct: TradeProductType; specifiedLineTradeAgreement: LineTradeAgreementType; specifiedLineTradeDelivery: LineTradeDeliveryType; specifiedLineTradeSettlement: LineTradeSettlementType; }); associatedDocumentLineDocument: DocumentLineDocumentType; specifiedTradeProduct: TradeProductType; specifiedLineTradeAgreement: LineTradeAgreementType; specifiedLineTradeDelivery: LineTradeDeliveryType; specifiedLineTradeSettlement: LineTradeSettlementType; } /** * CrossIndustryInvoice classes for Factur-X * Based on urn:un:unece:uncefact:data:standard:CrossIndustryInvoice:100 */ /** * Exchanged document context type */ declare class ExchangedDocumentContextType { constructor({ testIndicator, businessProcessSpecifiedDocumentContextParameter, guidelineSpecifiedDocumentContextParameter, }: { testIndicator?: IndicatorType; businessProcessSpecifiedDocumentContextParameter?: DocumentContextParameterType; guidelineSpecifiedDocumentContextParameter: DocumentContextParameterType; }); testIndicator?: IndicatorType; businessProcessSpecifiedDocumentContextParameter?: DocumentContextParameterType; guidelineSpecifiedDocumentContextParameter: DocumentContextParameterType; } /** * Exchanged document type */ declare class ExchangedDocumentType { constructor({ id, name, typeCode, issueDateTime, copyIndicator, languageID, includedNote, effectiveSpecifiedPeriod, }: { id: IDType; name?: TextType; typeCode: DocumentCodeType; issueDateTime: DateTimeType; copyIndicator?: IndicatorType; languageID?: IDType[]; includedNote?: NoteType[]; effectiveSpecifiedPeriod?: SpecifiedPeriodType; }); id: IDType; name?: TextType; typeCode: DocumentCodeType; issueDateTime: DateTimeType; copyIndicator?: IndicatorType; languageID?: IDType[]; includedNote?: NoteType[]; effectiveSpecifiedPeriod?: SpecifiedPeriodType; } /** * Header trade agreement type */ declare class HeaderTradeAgreementType { constructor({ buyerReference, sellerTradeParty, buyerTradeParty, salesAgentTradeParty, buyerTaxRepresentativeTradeParty, sellerTaxRepresentativeTradeParty, productEndUserTradeParty, applicableTradeDeliveryTerms, sellerOrderReferencedDocument, buyerOrderReferencedDocument, quotationReferencedDocument, contractReferencedDocument, additionalReferencedDocument, buyerAgentTradeParty, specifiedProcuringProject, ultimateCustomerOrderReferencedDocument, }: { buyerReference?: TextType; sellerTradeParty: TradePartyType; buyerTradeParty: TradePartyType; salesAgentTradeParty?: TradePartyType; buyerTaxRepresentativeTradeParty?: TradePartyType; sellerTaxRepresentativeTradeParty?: TradePartyType; productEndUserTradeParty?: TradePartyType; applicableTradeDeliveryTerms?: TradeDeliveryTermsType; sellerOrderReferencedDocument?: ReferencedDocumentType; buyerOrderReferencedDocument?: ReferencedDocumentType; quotationReferencedDocument?: ReferencedDocumentType; contractReferencedDocument?: ReferencedDocumentType; additionalReferencedDocument?: ReferencedDocumentType[]; buyerAgentTradeParty?: TradePartyType; specifiedProcuringProject?: ProcuringProjectType; ultimateCustomerOrderReferencedDocument?: ReferencedDocumentType[]; }); buyerReference?: TextType; sellerTradeParty: TradePartyType; buyerTradeParty: TradePartyType; salesAgentTradeParty?: TradePartyType; buyerTaxRepresentativeTradeParty?: TradePartyType; sellerTaxRepresentativeTradeParty?: TradePartyType; productEndUserTradeParty?: TradePartyType; applicableTradeDeliveryTerms?: TradeDeliveryTermsType; sellerOrderReferencedDocument?: ReferencedDocumentType; buyerOrderReferencedDocument?: ReferencedDocumentType; quotationReferencedDocument?: ReferencedDocumentType; contractReferencedDocument?: ReferencedDocumentType; additionalReferencedDocument?: ReferencedDocumentType[]; buyerAgentTradeParty?: TradePartyType; specifiedProcuringProject?: ProcuringProjectType; ultimateCustomerOrderReferencedDocument?: ReferencedDocumentType[]; } /** * Header trade delivery type */ declare class HeaderTradeDeliveryType { constructor({ relatedSupplyChainConsignment, shipToTradeParty, ultimateShipToTradeParty, shipFromTradeParty, actualDeliverySupplyChainEvent, despatchAdviceReferencedDocument, receivingAdviceReferencedDocument, deliveryNoteReferencedDocument, }: { relatedSupplyChainConsignment?: SupplyChainConsignmentType; shipToTradeParty?: TradePartyType; ultimateShipToTradeParty?: TradePartyType; shipFromTradeParty?: TradePartyType; actualDeliverySupplyChainEvent?: SupplyChainEventType; despatchAdviceReferencedDocument?: ReferencedDocumentType; receivingAdviceReferencedDocument?: ReferencedDocumentType; deliveryNoteReferencedDocument?: ReferencedDocumentType; }); relatedSupplyChainConsignment?: SupplyChainConsignmentType; shipToTradeParty?: TradePartyType; ultimateShipToTradeParty?: TradePartyType; shipFromTradeParty?: TradePartyType; actualDeliverySupplyChainEvent?: SupplyChainEventType; despatchAdviceReferencedDocument?: ReferencedDocumentType; receivingAdviceReferencedDocument?: ReferencedDocumentType; deliveryNoteReferencedDocument?: ReferencedDocumentType; } /** * Header trade settlement type */ declare class HeaderTradeSettlementType { constructor({ creditorReferenceID, paymentReference, taxCurrencyCode, invoiceCurrencyCode, invoiceIssuerReference, invoicerTradeParty, invoiceeTradeParty, payeeTradeParty, payerTradeParty, taxApplicableTradeCurrencyExchange, specifiedTradeSettlementPaymentMeans, applicableTradeTax, billingSpecifiedPeriod, specifiedTradeAllowanceCharge, specifiedLogisticsServiceCharge, specifiedTradePaymentTerms, specifiedTradeSettlementHeaderMonetarySummation, invoiceReferencedDocument, receivableSpecifiedTradeAccountingAccount, specifiedAdvancePayment, }: { creditorReferenceID?: IDType; paymentReference?: TextType; taxCurrencyCode?: CurrencyCodeType; invoiceCurrencyCode: CurrencyCodeType; invoiceIssuerReference?: TextType; invoicerTradeParty?: TradePartyType; invoiceeTradeParty?: TradePartyType; payeeTradeParty?: TradePartyType; payerTradeParty?: TradePartyType; taxApplicableTradeCurrencyExchange?: TradeCurrencyExchangeType; specifiedTradeSettlementPaymentMeans?: TradeSettlementPaymentMeansType[]; applicableTradeTax: TradeTaxType[]; billingSpecifiedPeriod?: SpecifiedPeriodType; specifiedTradeAllowanceCharge?: TradeAllowanceChargeType[]; specifiedLogisticsServiceCharge?: LogisticsServiceChargeType[]; specifiedTradePaymentTerms?: TradePaymentTermsType[]; specifiedTradeSettlementHeaderMonetarySummation: TradeSettlementHeaderMonetarySummationType; invoiceReferencedDocument?: ReferencedDocumentType; receivableSpecifiedTradeAccountingAccount?: TradeAccountingAccountType[]; specifiedAdvancePayment?: AdvancePaymentType[]; }); creditorReferenceID?: IDType; paymentReference?: TextType; taxCurrencyCode?: CurrencyCodeType; invoiceCurrencyCode: CurrencyCodeType; invoiceIssuerReference?: TextType; invoicerTradeParty?: TradePartyType; invoiceeTradeParty?: TradePartyType; payeeTradeParty?: TradePartyType; payerTradeParty?: TradePartyType; taxApplicableTradeCurrencyExchange?: TradeCurrencyExchangeType; specifiedTradeSettlementPaymentMeans?: TradeSettlementPaymentMeansType[]; applicableTradeTax: TradeTaxType[]; billingSpecifiedPeriod?: SpecifiedPeriodType; specifiedTradeAllowanceCharge?: TradeAllowanceChargeType[]; specifiedLogisticsServiceCharge?: LogisticsServiceChargeType[]; specifiedTradePaymentTerms?: TradePaymentTermsType[]; specifiedTradeSettlementHeaderMonetarySummation: TradeSettlementHeaderMonetarySummationType; invoiceReferencedDocument?: ReferencedDocumentType; receivableSpecifiedTradeAccountingAccount?: TradeAccountingAccountType[]; specifiedAdvancePayment?: AdvancePaymentType[]; } /** * Supply chain trade transaction type */ declare class SupplyChainTradeTransactionType { constructor({ includedSupplyChainTradeLineItem, applicableHeaderTradeAgreement, applicableHeaderTradeDelivery, applicableHeaderTradeSettlement, }: { includedSupplyChainTradeLineItem?: SupplyChainTradeLineItemType[]; applicableHeaderTradeAgreement: HeaderTradeAgreementType; applicableHeaderTradeDelivery: HeaderTradeDeliveryType; applicableHeaderTradeSettlement: HeaderTradeSettlementType; }); includedSupplyChainTradeLineItem?: SupplyChainTradeLineItemType[]; applicableHeaderTradeAgreement: HeaderTradeAgreementType; applicableHeaderTradeDelivery: HeaderTradeDeliveryType; applicableHeaderTradeSettlement: HeaderTradeSettlementType; } /** * Cross industry invoice type - the main class for Factur-X */ declare class CrossIndustryInvoiceType { constructor({ exchangedDocumentContext, exchangedDocument, supplyChainTradeTransaction, }: { exchangedDocumentContext: ExchangedDocumentContextType; exchangedDocument: ExchangedDocumentType; supplyChainTradeTransaction: SupplyChainTradeTransactionType; }); exchangedDocumentContext: ExchangedDocumentContextType; exchangedDocument: ExchangedDocumentType; supplyChainTradeTransaction: SupplyChainTradeTransactionType; } export { AccountingAccountTypeCodeType, AdvancePaymentType, AllowanceChargeReasonCodeType, AmountType, BinaryObjectType, CodeType, ContactTypeCodeType, CountryIDType, CreditorFinancialAccountType, CreditorFinancialInstitutionType, CrossIndustryInvoiceType, CurrencyCodeType, DateTimeType, DateType, DebtorFinancialAccountType, DeliveryTermsCodeType, DocumentCodeType, DocumentContextParameterType, DocumentLineDocumentType, ExchangedDocumentContextType, ExchangedDocumentType, FormattedDateTimeType, HeaderTradeAgreementType, HeaderTradeDeliveryType, HeaderTradeSettlementType, IDType, IndicatorType, LegalOrganizationType, LineStatusCodeType, LineTradeAgreementType, LineTradeDeliveryType, LineTradeSettlementType, LogisticsServiceChargeType, LogisticsTransportMovementType, MeasureType, NoteType, NumericType, PartyRoleCodeType, PaymentMeansCodeType, PercentType, ProcuringProjectType, ProductCharacteristicType, ProductClassificationType, QuantityType, RateType, ReferenceCodeType, ReferencedDocumentType, ReferencedProductType, SpecifiedPeriodType, SupplyChainConsignmentType, SupplyChainEventType, SupplyChainTradeLineItemType, SupplyChainTradeTransactionType, TaxCategoryCodeType, TaxRegistrationType, TaxTypeCodeType, TextType, TimeReferenceCodeType, TradeAccountingAccountType, TradeAddressType, TradeAllowanceChargeType, TradeContactType, TradeCountryType, TradeCurrencyExchangeType, TradeDeliveryTermsType, TradePartyType, TradePaymentDiscountTermsType, TradePaymentPenaltyTermsType, TradePaymentTermsType, TradePriceType, TradeProductInstanceType, TradeProductType, TradeSettlementFinancialCardType, TradeSettlementHeaderMonetarySummationType, TradeSettlementLineMonetarySummationType, TradeSettlementPaymentMeansType, TradeTaxType, TransportModeCodeType, UniversalCommunicationType };