import { AbstractRestfulClient, Parameters } from '../abstractRestfulClient'; import { GetResult } from '../getResult'; import { DataListOrders } from './entities/dataListOrders'; import { ReferenceLink } from './entities/referenceLink'; import { UpdateOrderResult } from './entities/orders/updateOrderResult'; import { AttachmentOrder, AttachmentsListOrder } from './entities/orders/attachment'; export declare enum CreateOrderInputFields { COLUMN_CUSTOMER = "customer", COLUMN_REFERENCE = "reference", COLUMN_PO_NUMBER = "ponumber", COLUMN_END_CUSTOMER_PO_NUMBER = "endCustomerPONumber", COLUMN_PRODUCTS = "products", COLUMN_ARROW_SPHERE_PRICE_BAND_SKU = "arrowSpherePriceBandSku", COLUMN_BUNDLE_ARROW_SKU = "bundleArrowSphereSku", COLUMN_BUNDLE_UUID = "bundleUuid", COLUMN_SKU = "sku", COLUMN_QUANTITY = "quantity", COLUMN_SUBSCRIPTION = "subscription", COLUMN_PARENT_LICENSE_ID = "parentLicenseId", COLUMN_PARENT_SKU = "parentSku", COLUMN_PERIODICITY = "periodicity", COLUMN_TERM = "term", COLUMN_DISCOUNT = "discount", COLUMN_UPLIFT = "uplift", COLUMN_AUTO_RENEW = "autoRenew", COLUMN_EFFECTIVE_START_DATE = "effectiveStartDate", COLUMN_EFFECTIVE_END_DATE = "effectiveEndDate", COLUMN_VENDOR_REFERENCE_ID = "vendorReferenceId", COLUMN_PARENT_VENDOR_REFERENCE_ID = "parentVendorReferenceId", COLUMN_FRIENDLY_NAME = "friendlyName", COLUMN_COMMENT1 = "comment1", COLUMN_COMMENT2 = "comment2", COLUMN_SCENARIO = "scenario", COLUMN_SCHEDULE_DATE = "scheduledDate", COLUMN_PRICE = "price", COLUMN_PRICE_VENDOR = "vendor", COLUMN_PRICE_BUY = "buy", COLUMN_PRICE_LIST = "list", COLUMN_PRICE_RESELLER = "reseller", COLUMN_PRICE_END_CUSTOMER = "endCustomer", COLUMN_PRICE_CURRENCY = "currency", COLUMN_PRICE_UNIT = "unitPrice", COLUMN_PRICE_EXCHANGE_RATE = "exchangeRate", COLUMN_EXTRA_INFORMATION = "extraInformation", COLUMN_COTERMINOSITY_DATE = "coterminosityDate", COLUMN_COTERMINOSITY_SUBSCRIPTION_REF = "coterminositySubscriptionRef", COLUMN_PROMOTION_ID = "promotionId", COLUMN_ORGANIZATION_UNIT_REF = "organizationUnitRef", COLUMN_EAVS = "eavs", COLUMN_QUOTE_REF = "quoteRef", COLUMN_CUSTOM_FIELDS = "customFields" } export declare enum scenarioType { INJECTION = "injection", RECONCILIATION = "reconciliation", PROVISION = "provision" } export declare enum StaffTypeEnum { ICST = "icst", ISR = "isr", FCST = "fcst", FSR = "fsr", SOR = "sor" } export declare type OrderProgramsType = { [key: string]: { [name: string]: string; }; }; export declare type CreateOrderInputType = { [CreateOrderInputFields.COLUMN_CUSTOMER]: { [CreateOrderInputFields.COLUMN_REFERENCE]: string; [CreateOrderInputFields.COLUMN_PO_NUMBER]?: string; [CreateOrderInputFields.COLUMN_END_CUSTOMER_PO_NUMBER]?: string; }; [CreateOrderInputFields.COLUMN_SCENARIO]?: scenarioType; [CreateOrderInputFields.COLUMN_SCHEDULE_DATE]?: string; [CreateOrderInputFields.COLUMN_PRODUCTS]: Array; [CreateOrderInputFields.COLUMN_EXTRA_INFORMATION]?: { programs: OrderProgramsType; }; [CreateOrderInputFields.COLUMN_ORGANIZATION_UNIT_REF]?: string; [CreateOrderInputFields.COLUMN_QUOTE_REF]?: string; [CreateOrderInputFields.COLUMN_CUSTOM_FIELDS]?: Array<{ label: string; value: string; }>; }; export declare type CreateOrderProductType = { [CreateOrderInputFields.COLUMN_ARROW_SPHERE_PRICE_BAND_SKU]?: string; [CreateOrderInputFields.COLUMN_BUNDLE_ARROW_SKU]?: string; [CreateOrderInputFields.COLUMN_BUNDLE_UUID]?: string; [CreateOrderInputFields.COLUMN_SKU]?: string; [CreateOrderInputFields.COLUMN_QUANTITY]: number; [CreateOrderInputFields.COLUMN_SUBSCRIPTION]?: { [CreateOrderInputFields.COLUMN_REFERENCE]: string; }; [CreateOrderInputFields.COLUMN_PARENT_LICENSE_ID]?: string; [CreateOrderInputFields.COLUMN_PARENT_SKU]?: string; [CreateOrderInputFields.COLUMN_PERIODICITY]?: string | number; [CreateOrderInputFields.COLUMN_TERM]?: string | number; [CreateOrderInputFields.COLUMN_DISCOUNT]?: number; [CreateOrderInputFields.COLUMN_UPLIFT]?: number; [CreateOrderInputFields.COLUMN_AUTO_RENEW]?: boolean; [CreateOrderInputFields.COLUMN_EFFECTIVE_START_DATE]?: string; [CreateOrderInputFields.COLUMN_EFFECTIVE_END_DATE]?: string; [CreateOrderInputFields.COLUMN_VENDOR_REFERENCE_ID]?: string; [CreateOrderInputFields.COLUMN_PARENT_VENDOR_REFERENCE_ID]?: string; [CreateOrderInputFields.COLUMN_FRIENDLY_NAME]?: string; [CreateOrderInputFields.COLUMN_COMMENT1]?: string; [CreateOrderInputFields.COLUMN_COMMENT2]?: string; [CreateOrderInputFields.COLUMN_COTERMINOSITY_DATE]?: string; [CreateOrderInputFields.COLUMN_COTERMINOSITY_SUBSCRIPTION_REF]?: string; [CreateOrderInputFields.COLUMN_PROMOTION_ID]?: string; [CreateOrderInputFields.COLUMN_PRICE]?: { [CreateOrderInputFields.COLUMN_PRICE_VENDOR]?: { [CreateOrderInputFields.COLUMN_PRICE_CURRENCY]?: string; [CreateOrderInputFields.COLUMN_PRICE_EXCHANGE_RATE]?: number; }; [CreateOrderInputFields.COLUMN_PRICE_BUY]?: { [CreateOrderInputFields.COLUMN_PRICE_CURRENCY]?: string; [CreateOrderInputFields.COLUMN_PRICE_UNIT]?: number; [CreateOrderInputFields.COLUMN_PRICE_EXCHANGE_RATE]?: number; }; [CreateOrderInputFields.COLUMN_PRICE_LIST]?: { [CreateOrderInputFields.COLUMN_PRICE_CURRENCY]?: string; [CreateOrderInputFields.COLUMN_PRICE_UNIT]?: number; [CreateOrderInputFields.COLUMN_PRICE_EXCHANGE_RATE]?: number; }; [CreateOrderInputFields.COLUMN_PRICE_RESELLER]?: { [CreateOrderInputFields.COLUMN_PRICE_CURRENCY]?: string; [CreateOrderInputFields.COLUMN_PRICE_UNIT]?: number; [CreateOrderInputFields.COLUMN_PRICE_EXCHANGE_RATE]?: number; }; [CreateOrderInputFields.COLUMN_PRICE_END_CUSTOMER]?: { [CreateOrderInputFields.COLUMN_PRICE_CURRENCY]?: string; [CreateOrderInputFields.COLUMN_PRICE_UNIT]?: number; [CreateOrderInputFields.COLUMN_PRICE_EXCHANGE_RATE]?: number; }; }; [CreateOrderInputFields.COLUMN_EAVS]?: Record; }; export declare enum UpdateOrderInputFields { COLUMN_PO_NUMBER = "PO_number", COLUMN_END_CUSTOMER_PO_NUMBER = "end_customer_PO_number", COLUMN_CUSTOM_FIELDS = "customFields" } export declare enum UpdateOrderCustomFields { COLUMN_LABEL = "label", COLUMN_VALUE = "value" } export declare type UpdateOrderInputType = { [UpdateOrderInputFields.COLUMN_PO_NUMBER]?: string; [UpdateOrderInputFields.COLUMN_END_CUSTOMER_PO_NUMBER]?: string; [UpdateOrderInputFields.COLUMN_CUSTOM_FIELDS]?: Array<{ [UpdateOrderCustomFields.COLUMN_LABEL]: string; [UpdateOrderCustomFields.COLUMN_VALUE]: string; }>; }; export declare enum UpdateContributorItemOrderInputFields { COLUMN_TYPE = "type", COLUMN_STAFF_ID = "staffId" } export declare type UpdateContributorItemOrderInputType = { [UpdateContributorItemOrderInputFields.COLUMN_TYPE]: StaffTypeEnum; [UpdateContributorItemOrderInputFields.COLUMN_STAFF_ID]: number | null; }; export declare enum UpdateContributorOrderInputFields { COLUMN_CONTRIBUTOR = "contributor" } export declare type UpdateContributorOrderInputType = { [UpdateContributorOrderInputFields.COLUMN_CONTRIBUTOR]: UpdateContributorItemOrderInputType[]; }; export declare enum UpdateAdditionalInformationItemOrderInputFields { COLUMN_NAME = "name", COLUMN_VALUE = "value" } export declare type UpdateAdditionalInformationItemOrderInputType = { [UpdateAdditionalInformationItemOrderInputFields.COLUMN_NAME]: string; [UpdateAdditionalInformationItemOrderInputFields.COLUMN_VALUE]: string; }; export declare enum UpdateAdditionalInformationOrderInputFields { COLUMN_DATA = "data" } export declare type UpdateAdditionalInformationOrderInputType = { [UpdateAdditionalInformationOrderInputFields.COLUMN_DATA]: UpdateAdditionalInformationItemOrderInputType[]; }; export declare enum UploadAttachmentOrderInputFields { COLUMN_NAME = "name", COLUMN_FILE_ENCODED = "fileEncoded" } export declare type UploadAttachmentOrderInputType = { [UploadAttachmentOrderInputFields.COLUMN_NAME]: string; [UploadAttachmentOrderInputFields.COLUMN_FILE_ENCODED]: string; }; export declare type InjectionScenarioOrderInputType = { [UploadAttachmentOrderInputFields.COLUMN_FILE_ENCODED]: string; }; export declare class OrdersClient extends AbstractRestfulClient { /** * The base path of the API */ protected basePath: string; create(postData: CreateOrderInputType, parameters?: Parameters): Promise>; getListOrders(perPage?: number, page?: number, parameters?: Parameters): Promise>; getOrder(orderReference: string, parameters?: Parameters): Promise>; updateOrder(orderReference: string, payload: UpdateOrderInputType, parameters?: Parameters): Promise>; archiveOrder(orderReference: string, parameters?: Parameters): Promise; cancelOrder(orderReference: string, parameters?: Parameters): Promise; rejectGradedOrder(orderReference: string, parameters?: Parameters): Promise; resubmitOrder(orderReference: string, parameters?: Parameters): Promise; validateOrder(orderReference: string, parameters?: Parameters): Promise; updateStaffContributorsOrder(orderReference: string, payload: UpdateContributorOrderInputType, parameters?: Parameters): Promise; updateAdditionalInformationOrder(orderReference: string, payload: UpdateAdditionalInformationOrderInputType, parameters?: Parameters): Promise; getAttachmentsOrder(orderReference: string, perPage?: number, page?: number, parameters?: Parameters): Promise>; deleteAttachmentOrder(orderReference: string, name: string, parameters?: Parameters): Promise; uploadAttachmentOrder(orderReference: string, payload: UploadAttachmentOrderInputType, parameters?: Parameters): Promise>; injectionScenarioOrder(payload: InjectionScenarioOrderInputType, parameters?: Parameters): Promise>; }