import { TccET_BIZOBJ } from "./bizobj.model";
import { TccClarcDate } from "./shared.model";
export declare namespace TccET_MDM {
    enum Currency {
        ccCS_Unknown = 0,
        ccCS_AED = 1,
        ccCS_AFN = 2,
        ccCS_ALL = 3,
        ccCS_AMD = 4,
        ccCS_ANG = 5,
        ccCS_AOA = 6,
        ccCS_ARS = 7,
        ccCS_AUD = 8,
        ccCS_AWG = 9,
        ccCS_AZN = 10,
        ccCS_BAM = 11,
        ccCS_BBD = 12,
        ccCS_BDT = 13,
        ccCS_BGN = 14,
        ccCS_BHD = 15,
        ccCS_BIF = 16,
        ccCS_BMD = 17,
        ccCS_BND = 18,
        ccCS_BOB = 19,
        ccCS_BRL = 20,
        ccCS_BSD = 21,
        ccCS_BTN = 22,
        ccCS_BWP = 23,
        ccCS_BYN = 24,
        ccCS_BZD = 25,
        ccCS_CAD = 26,
        ccCS_CDF = 27,
        ccCS_CHF = 28,
        ccCS_CLP = 29,
        ccCS_CNY = 30,
        ccCS_COP = 31,
        ccCS_CRC = 32,
        ccCS_CUP = 33,
        ccCS_CVE = 34,
        ccCS_CZK = 35,
        ccCS_DJF = 36,
        ccCS_DKK = 37,
        ccCS_DOP = 38,
        ccCS_DZD = 39,
        ccCS_EGP = 40,
        ccCS_ERN = 41,
        ccCS_ETB = 42,
        ccCS_EUR = 43,
        ccCS_FJD = 44,
        ccCS_FKP = 45,
        ccCS_GBP = 46,
        ccCS_GEL = 47,
        ccCS_GGP = 48,
        ccCS_GHS = 49,
        ccCS_GIP = 50,
        ccCS_GMD = 51,
        ccCS_GNF = 52,
        ccCS_GTQ = 53,
        ccCS_GYD = 54,
        ccCS_HKD = 55,
        ccCS_HNL = 56,
        ccCS_HRK = 57,
        ccCS_HTG = 58,
        ccCS_HUF = 59,
        ccCS_IDR = 60,
        ccCS_ILS = 61,
        ccCS_IMP = 62,
        ccCS_INR = 63,
        ccCS_IQD = 64,
        ccCS_IRR = 65,
        ccCS_ISK = 66,
        ccCS_JEP = 67,
        ccCS_JMD = 68,
        ccCS_JOD = 69,
        ccCS_JPY = 70,
        ccCS_KES = 71,
        ccCS_KGS = 72,
        ccCS_KHR = 73,
        ccCS_KMF = 74,
        ccCS_KPW = 75,
        ccCS_KRW = 76,
        ccCS_KWD = 77,
        ccCS_KYD = 78,
        ccCS_KZT = 79,
        ccCS_LAK = 80,
        ccCS_LBP = 81,
        ccCS_LKR = 82,
        ccCS_LRD = 83,
        ccCS_LSL = 84,
        ccCS_LYD = 85,
        ccCS_MAD = 86,
        ccCS_MDL = 87,
        ccCS_MGA = 88,
        ccCS_MKD = 89,
        ccCS_MMK = 90,
        ccCS_MNT = 91,
        ccCS_MOP = 92,
        ccCS_MRU = 93,
        ccCS_MUR = 94,
        ccCS_MVR = 95,
        ccCS_MWK = 96,
        ccCS_MXN = 97,
        ccCS_MYR = 98,
        ccCS_MZN = 99,
        ccCS_NAD = 100,
        ccCS_NGN = 101,
        ccCS_NIO = 102,
        ccCS_NOK = 103,
        ccCS_NPR = 104,
        ccCS_NZD = 105,
        ccCS_OMR = 106,
        ccCS_PEN = 107,
        ccCS_PGK = 108,
        ccCS_PHP = 109,
        ccCS_PKR = 110,
        ccCS_PLN = 111,
        ccCS_PYG = 112,
        ccCS_QAR = 113,
        ccCS_RON = 114,
        ccCS_RSD = 115,
        ccCS_RUB = 116,
        ccCS_RWF = 117,
        ccCS_SAR = 118,
        ccCS_SBD = 119,
        ccCS_SCR = 120,
        ccCS_SDG = 121,
        ccCS_SEK = 122,
        ccCS_SGD = 123,
        ccCS_SHP = 124,
        ccCS_SLL = 125,
        ccCS_SOS = 126,
        ccCS_SRD = 127,
        ccCS_SSP = 128,
        ccCS_STN = 129,
        ccCS_SYP = 130,
        ccCS_SZL = 131,
        ccCS_THB = 132,
        ccCS_TJS = 133,
        ccCS_TMT = 134,
        ccCS_TND = 135,
        ccCS_TOP = 136,
        ccCS_TRY = 137,
        ccCS_TTD = 138,
        ccCS_TWD = 139,
        ccCS_TZS = 140,
        ccCS_UAH = 141,
        ccCS_UGX = 142,
        ccCS_USD = 143,
        ccCS_UYU = 144,
        ccCS_UZS = 145,
        ccCS_VES = 146,
        ccCS_VND = 147,
        ccCS_VUV = 148,
        ccCS_WST = 149,
        ccCS_XAF = 150,
        ccCS_XCD = 151,
        ccCS_XDR = 152,
        ccCS_XOF = 153,
        ccCS_XPF = 154,
        ccCS_YER = 155,
        ccCS_ZAR = 156,
        ccCS_ZMW = 157
    }
    enum SystemClass {
        ccSC_Unknown = 0,
        ccSC_External = 1,
        ccSC_Core = 2,
        ccSC_Productive = 3,
        ccSC_Test = 4,
        ccSC_Development = 5,
        ccSC_Training = 6,
        ccSC_Sandbox = 7
    }
    enum SyncState {
        ccIS_Idle = 0,
        ccIS_Insert = 1,
        ccIS_Update = 2,
        ccIS_Delete = 3
    }
    enum TccBusinessPartnerAddressType {
        ccAT_Unknown = 0,
        ccAT_Invoice = 1,
        ccAT_Delivery = 2,
        ccAT_Contact = 3,
        ccAT_Plant = 4
    }
    enum TccBusinessPartnerRole {
        ccPR_Unknown = "ccPR_Unknown",
        ccPR_Creditor = "ccPR_Creditor",
        ccPR_Debitor = "ccPR_Debitor",
        ccPR_Company = "ccPR_Company",
        ccPR_ContractingAuthority = "ccPR_ContractingAuthority",
        ccPR_GoodsRecipient = "ccPR_GoodsRecipient",
        ccPR_InvoiceRecipient = "ccPR_InvoiceRecipient",
        ccPR_InvoiceRegulator = "ccPR_InvoiceRegulator"
    }
    enum TccUnitType {
        ccUT_H87 = "ccUT_H87"
    }
    interface TccODataBasicCustomEntityItem {
        Id?: string;
        ETag?: string;
        SystemClass?: SystemClass;
    }
    type TccMasterDataAddresses = Array<TccMasterDataAddress>;
    interface TccMasterDataAddress {
        Types?: TccBusinessPartnerAddressType[];
        Id?: string;
        Company?: TccMasterDataCompany;
        Street?: TccMasterDataStreet;
        Addition?: string;
        LetterBox?: string;
        PostCode?: string;
        PostCodeLb?: string;
        CityName?: string;
        Phone?: string;
        Email?: string;
        Country?: string;
    }
    interface TccMasterDataBusinessPartner extends TccODataBasicCustomEntityItem {
        SyncState?: SyncState;
        Hashes?: string[];
        ErpId?: string;
        Currency?: Currency;
        CompanyCodes?: TccET_BIZOBJ.CompanyCode[];
        SalesTaxIds?: string[];
        TaxIds?: string[];
        Contact?: TccMasterDataContacts;
        Addresses?: TccMasterDataAddresses;
        Banks?: TccMasterDataBanks;
    }
    interface TccMasterDataCompany {
        Name: string;
        Addition: string;
    }
    type TccMasterDataBanks = Array<TccMasterDataBank>;
    interface TccMasterDataBank {
        Name: string;
        Code: string;
        ProprietaryId: string;
        Swift: string;
        Iban: string;
    }
    interface TccMasterDataContacts {
        Surname: string;
        Firstname: string;
        Abbreviati: string;
        Phone: string;
        Fax: string;
        Email: string;
    }
    interface TccMasterDataStreet {
        Name: string;
        Number: string;
    }
    interface TccMasterDataUnit {
        Original: string;
        UnitType: TccUnitType;
    }
    interface TccMasterDataDeliveryNoteNumber {
        Id: string;
        DeliveryNoteId: string;
        Normalized: string;
        Date: TccClarcDate;
    }
    type TccMasterDataDeliveryNoteNumbers = Array<TccMasterDataDeliveryNoteNumber>;
    interface TccMasterDataDebitorSalesOrgPartner {
        Id: string;
        Roles: Array<TccBusinessPartnerRole>;
    }
    type TccMasterDataDebitorSalesOrgPartners = Array<TccMasterDataDebitorSalesOrgPartner>;
    interface TccMasterDataDebitorSalesOrg {
        Id: string;
        Currency: Currency;
        Roles: Array<TccBusinessPartnerRole>;
        Partners: TccMasterDataDebitorSalesOrgPartners;
    }
    type TccMasterDataDebitorSalesOrgs = Array<TccMasterDataDebitorSalesOrg>;
    interface Debitor extends TccMasterDataBusinessPartner {
        SalesOrgs?: TccMasterDataDebitorSalesOrgs;
    }
    interface Creditor extends TccMasterDataBusinessPartner {
    }
    interface TccMasterDataCompanySalesOrgs {
        Id: string;
    }
    interface Company extends TccMasterDataBusinessPartner {
        SalesOrgs?: TccMasterDataCompanySalesOrgs;
    }
    interface TccMasterDataExternalArticleId {
        CustomerId: string;
        ArticleId: string;
        QuantityUnit: TccMasterDataUnit;
        CustomerNo: string;
    }
    type TccMasterDataExternalArticleIds = Array<TccMasterDataExternalArticleId>;
    interface TccMasterDataCatalogueArticleId {
        CatalogueId: string;
        CompanyCode: string;
    }
    type TccMasterDataCatalogueArticleIds = Array<TccMasterDataCatalogueArticleId>;
    interface Article extends TccODataBasicCustomEntityItem {
        SyncState: SyncState;
        Hashes: string[];
        ErpId: string;
        QuantityUnit: TccMasterDataUnit;
        ExternalIds: TccMasterDataExternalArticleIds;
        CatalogueIds: TccMasterDataCatalogueArticleIds;
        Text: string;
    }
    interface SalesOrg extends TccODataBasicCustomEntityItem {
        SyncState: SyncState;
        Hashes: string[];
        ErpId: string;
        Currency: Currency;
        CompanyCode: string;
        Addresses: TccMasterDataAddresses;
    }
    interface TccMasterDataOrderPosition {
        PriceUnit: number;
        FinalInvoiceIndicator: boolean;
        ExternalReceiptId: string;
        GoodsReceiptQuantity: number;
    }
    type TccMasterDataOrderPositions = Array<TccMasterDataOrderPosition>;
    interface Order extends TccODataBasicCustomEntityItem {
        SyncState: SyncState;
        Hashes: string[];
        ErpId: string;
        Date: TccClarcDate;
        DeliveryNoteNumbers: TccMasterDataDeliveryNoteNumbers;
        BusinessPartner: string;
        AddressNumber: string;
        Positions: TccMasterDataOrderPositions;
    }
    interface TccMasterDataQuotePosition {
    }
    type TccMasterDataQuotePositions = Array<TccMasterDataQuotePosition>;
    interface Quote extends TccODataBasicCustomEntityItem {
        SyncState: SyncState;
        Hashes: string[];
        ErpId: string;
        Date: TccClarcDate;
        BusinessPartner: string;
        Positions: TccMasterDataQuotePositions;
    }
}
