@commercelayer/sdk
Version:
Commerce Layer Javascript SDK
1 lines • 21.3 kB
Source Map (JSON)
{"version":3,"sources":["../src/resources/customers.ts"],"names":["ApiResource"],"mappings":";;;;;AA6LA,IAAM,SAAA,GAAN,MAAM,UAAA,SAAkBA,6BAAA,CAAsB;AAAA,EAE7C,OAAgB,IAAA,GAAqB,WAAA;AAAA,EAErC,MAAM,MAAA,CAAO,QAAA,EAA0B,MAAA,EAAwC,OAAA,EAA8C;AAC5H,IAAA,OAAO,IAAA,CAAK,SAAA,CAAU,MAAA,CAAiC,EAAE,GAAG,QAAA,EAAU,IAAA,EAAM,UAAA,CAAU,IAAA,EAAK,EAAG,MAAA,EAAQ,OAAO,CAAA;AAAA,EAC9G;AAAA,EAEA,MAAM,MAAA,CAAO,QAAA,EAA0B,MAAA,EAAwC,OAAA,EAA8C;AAC5H,IAAA,OAAO,IAAA,CAAK,SAAA,CAAU,MAAA,CAAiC,EAAE,GAAG,QAAA,EAAU,IAAA,EAAM,UAAA,CAAU,IAAA,EAAK,EAAG,MAAA,EAAQ,OAAO,CAAA;AAAA,EAC9G;AAAA,EAEA,MAAM,MAAA,CAAO,EAAA,EAAyB,OAAA,EAA0C;AAC/E,IAAA,MAAM,IAAA,CAAK,SAAA,CAAU,MAAA,CAAQ,OAAO,EAAA,KAAO,QAAA,GAAW,EAAE,EAAA,EAAI,IAAA,EAAM,UAAA,CAAU,IAAA,EAAK,GAAI,IAAI,OAAO,CAAA;AAAA,EACjG;AAAA,EAEA,MAAM,cAAA,CAAe,UAAA,EAA+B,MAAA,EAA6C,OAAA,EAAmD;AACnJ,IAAA,MAAM,WAAA,GAAe,WAAwB,EAAA,IAAM,UAAA;AACnD,IAAA,OAAO,IAAA,CAAK,SAAA,CAAU,KAAA,CAAqB,EAAE,IAAA,EAAM,iBAAA,EAAkB,EAAG,CAAA,UAAA,EAAa,WAAW,CAAA,eAAA,CAAA,EAAmB,MAAA,EAAQ,OAAO,CAAA;AAAA,EACnI;AAAA,EAEA,MAAM,kBAAA,CAAmB,UAAA,EAA+B,MAAA,EAA2C,OAAA,EAAmE;AACrK,IAAA,MAAM,WAAA,GAAe,WAAwB,EAAA,IAAM,UAAA;AACnD,IAAA,OAAO,IAAA,CAAK,SAAA,CAAU,KAAA,CAAuB,EAAE,IAAA,EAAM,oBAAA,EAAqB,EAAG,CAAA,UAAA,EAAa,WAAW,CAAA,mBAAA,CAAA,EAAuB,MAAA,EAAQ,OAAO,CAAA;AAAA,EAC5I;AAAA,EAEA,MAAM,wBAAA,CAAyB,UAAA,EAA+B,MAAA,EAAiD,OAAA,EAAyE;AACvL,IAAA,MAAM,WAAA,GAAe,WAAwB,EAAA,IAAM,UAAA;AACnD,IAAA,OAAO,IAAA,CAAK,SAAA,CAAU,KAAA,CAA6B,EAAE,IAAA,EAAM,0BAAA,EAA2B,EAAG,CAAA,UAAA,EAAa,WAAW,CAAA,yBAAA,CAAA,EAA6B,MAAA,EAAQ,OAAO,CAAA;AAAA,EAC9J;AAAA,EAEA,MAAM,sBAAA,CAAuB,UAAA,EAA+B,MAAA,EAAgD,OAAA,EAAwE;AACnL,IAAA,MAAM,WAAA,GAAe,WAAwB,EAAA,IAAM,UAAA;AACnD,IAAA,OAAO,IAAA,CAAK,SAAA,CAAU,KAAA,CAA4B,EAAE,IAAA,EAAM,wBAAA,EAAyB,EAAG,CAAA,UAAA,EAAa,WAAW,CAAA,uBAAA,CAAA,EAA2B,MAAA,EAAQ,OAAO,CAAA;AAAA,EACzJ;AAAA,EAEA,MAAM,MAAA,CAAO,UAAA,EAA+B,MAAA,EAAiC,OAAA,EAAyD;AACrI,IAAA,MAAM,WAAA,GAAe,WAAwB,EAAA,IAAM,UAAA;AACnD,IAAA,OAAO,IAAA,CAAK,SAAA,CAAU,KAAA,CAAa,EAAE,IAAA,EAAM,QAAA,EAAS,EAAG,CAAA,UAAA,EAAa,WAAW,CAAA,OAAA,CAAA,EAAW,MAAA,EAAQ,OAAO,CAAA;AAAA,EAC1G;AAAA,EAEA,MAAM,mBAAA,CAAoB,UAAA,EAA+B,MAAA,EAA6C,OAAA,EAAqE;AAC1K,IAAA,MAAM,WAAA,GAAe,WAAwB,EAAA,IAAM,UAAA;AACnD,IAAA,OAAO,IAAA,CAAK,SAAA,CAAU,KAAA,CAAyB,EAAE,IAAA,EAAM,qBAAA,EAAsB,EAAG,CAAA,UAAA,EAAa,WAAW,CAAA,oBAAA,CAAA,EAAwB,MAAA,EAAQ,OAAO,CAAA;AAAA,EAChJ;AAAA,EAEA,MAAM,OAAA,CAAQ,UAAA,EAA+B,MAAA,EAAkC,OAAA,EAA0D;AACxI,IAAA,MAAM,WAAA,GAAe,WAAwB,EAAA,IAAM,UAAA;AACnD,IAAA,OAAO,IAAA,CAAK,SAAA,CAAU,KAAA,CAAc,EAAE,IAAA,EAAM,SAAA,EAAU,EAAG,CAAA,UAAA,EAAa,WAAW,CAAA,QAAA,CAAA,EAAY,MAAA,EAAQ,OAAO,CAAA;AAAA,EAC7G;AAAA,EAEA,MAAM,SAAA,CAAU,UAAA,EAA+B,MAAA,EAAmC,OAAA,EAA2D;AAC5I,IAAA,MAAM,WAAA,GAAe,WAAwB,EAAA,IAAM,UAAA;AACnD,IAAA,OAAO,IAAA,CAAK,SAAA,CAAU,KAAA,CAAe,EAAE,IAAA,EAAM,WAAA,EAAY,EAAG,CAAA,UAAA,EAAa,WAAW,CAAA,UAAA,CAAA,EAAc,MAAA,EAAQ,OAAO,CAAA;AAAA,EAClH;AAAA,EAEA,MAAM,WAAA,CAAY,UAAA,EAA+B,MAAA,EAAsC,OAAA,EAA8D;AACpJ,IAAA,MAAM,WAAA,GAAe,WAAwB,EAAA,IAAM,UAAA;AACnD,IAAA,OAAO,IAAA,CAAK,SAAA,CAAU,KAAA,CAAkB,EAAE,IAAA,EAAM,aAAA,EAAc,EAAG,CAAA,UAAA,EAAa,WAAW,CAAA,YAAA,CAAA,EAAgB,MAAA,EAAQ,OAAO,CAAA;AAAA,EACzH;AAAA,EAEA,MAAM,MAAA,CAAO,UAAA,EAA+B,MAAA,EAAiC,OAAA,EAAyD;AACrI,IAAA,MAAM,WAAA,GAAe,WAAwB,EAAA,IAAM,UAAA;AACnD,IAAA,OAAO,IAAA,CAAK,SAAA,CAAU,KAAA,CAAa,EAAE,IAAA,EAAM,QAAA,EAAS,EAAG,CAAA,UAAA,EAAa,WAAW,CAAA,OAAA,CAAA,EAAW,MAAA,EAAQ,OAAO,CAAA;AAAA,EAC1G;AAAA,EAEA,MAAM,IAAA,CAAK,UAAA,EAA+B,MAAA,EAA+B,OAAA,EAAuD;AAC/H,IAAA,MAAM,WAAA,GAAe,WAAwB,EAAA,IAAM,UAAA;AACnD,IAAA,OAAO,IAAA,CAAK,SAAA,CAAU,KAAA,CAAW,EAAE,IAAA,EAAM,MAAA,EAAO,EAAG,CAAA,UAAA,EAAa,WAAW,CAAA,KAAA,CAAA,EAAS,MAAA,EAAQ,OAAO,CAAA;AAAA,EACpG;AAAA,EAEA,MAAM,YAAA,CAAa,UAAA,EAA+B,MAAA,EAAwC,OAAA,EAA8C;AACvI,IAAA,MAAM,WAAA,GAAe,WAAwB,EAAA,IAAM,UAAA;AACnD,IAAA,OAAO,IAAA,CAAK,SAAA,CAAU,KAAA,CAAgB,EAAE,IAAA,EAAM,WAAA,EAAY,EAAG,CAAA,UAAA,EAAa,WAAW,CAAA,aAAA,CAAA,EAAiB,MAAA,EAAQ,OAAO,CAAA;AAAA,EACtH;AAAA,EAEA,MAAM,WAAA,CAAY,UAAA,EAA+B,MAAA,EAAkC,OAAA,EAA0D;AAC5I,IAAA,MAAM,WAAA,GAAe,WAAwB,EAAA,IAAM,UAAA;AACnD,IAAA,OAAO,IAAA,CAAK,SAAA,CAAU,KAAA,CAAc,EAAE,IAAA,EAAM,SAAA,EAAU,EAAG,CAAA,UAAA,EAAa,WAAW,CAAA,YAAA,CAAA,EAAgB,MAAA,EAAQ,OAAO,CAAA;AAAA,EACjH;AAAA,EAEA,MAAM,mBAAA,CAAoB,UAAA,EAA+B,MAAA,EAAyC,OAAA,EAAiE;AAClK,IAAA,MAAM,WAAA,GAAe,WAAwB,EAAA,IAAM,UAAA;AACnD,IAAA,OAAO,IAAA,CAAK,SAAA,CAAU,KAAA,CAAqB,EAAE,IAAA,EAAM,iBAAA,EAAkB,EAAG,CAAA,UAAA,EAAa,WAAW,CAAA,oBAAA,CAAA,EAAwB,MAAA,EAAQ,OAAO,CAAA;AAAA,EACxI;AAAA,EAEA,MAAM,YAAA,CAAa,UAAA,EAA+B,MAAA,EAAsC,OAAA,EAA8D;AACrJ,IAAA,MAAM,WAAA,GAAe,WAAwB,EAAA,IAAM,UAAA;AACnD,IAAA,OAAO,IAAA,CAAK,SAAA,CAAU,KAAA,CAAkB,EAAE,IAAA,EAAM,cAAA,EAAe,EAAG,CAAA,UAAA,EAAa,WAAW,CAAA,aAAA,CAAA,EAAiB,MAAA,EAAQ,OAAO,CAAA;AAAA,EAC3H;AAAA,EAEA,MAAM,SAAA,CAAU,EAAA,EAAuB,YAAA,EAAsB,QAAwC,OAAA,EAA8C;AAClJ,IAAA,OAAO,KAAK,SAAA,CAAU,MAAA,CAAiC,EAAE,EAAA,EAAK,OAAO,OAAO,QAAA,GAAW,EAAA,GAAI,EAAA,CAAG,EAAA,EAAI,MAAM,UAAA,CAAU,IAAA,EAAM,WAAW,YAAA,EAAa,EAAG,QAAQ,OAAO,CAAA;AAAA,EACnK;AAAA,EAEA,MAAM,YAAA,CAAa,EAAA,EAAuB,YAAA,EAAsB,QAAwC,OAAA,EAA8C;AACrJ,IAAA,OAAO,KAAK,SAAA,CAAU,MAAA,CAAiC,EAAE,EAAA,EAAK,OAAO,OAAO,QAAA,GAAW,EAAA,GAAI,EAAA,CAAG,EAAA,EAAI,MAAM,UAAA,CAAU,IAAA,EAAM,cAAc,YAAA,EAAa,EAAG,QAAQ,OAAO,CAAA;AAAA,EACtK;AAAA,EAEA,MAAM,sBAAA,CAAuB,EAAA,EAAuB,MAAA,EAAwC,OAAA,EAA8C;AACzI,IAAA,OAAO,KAAK,SAAA,CAAU,MAAA,CAAiC,EAAE,EAAA,EAAK,OAAO,OAAO,QAAA,GAAW,EAAA,GAAI,EAAA,CAAG,EAAA,EAAI,MAAM,UAAA,CAAU,IAAA,EAAM,wBAAwB,IAAA,EAAK,EAAG,QAAQ,OAAO,CAAA;AAAA,EACxK;AAAA,EAEA,MAAM,qBAAA,CAAsB,EAAA,EAAuB,MAAA,EAAwC,OAAA,EAA8C;AACxI,IAAA,OAAO,KAAK,SAAA,CAAU,MAAA,CAAiC,EAAE,EAAA,EAAK,OAAO,OAAO,QAAA,GAAW,EAAA,GAAI,EAAA,CAAG,EAAA,EAAI,MAAM,UAAA,CAAU,IAAA,EAAM,uBAAuB,IAAA,EAAK,EAAG,QAAQ,OAAO,CAAA;AAAA,EACvK;AAAA,EAGA,WAAW,QAAA,EAAqC;AAC/C,IAAA,OAAO,QAAA,CAAS,IAAA,IAAS,QAAA,CAAS,IAAA,KAAS,UAAA,CAAU,IAAA;AAAA,EACtD;AAAA,EAGA,aAAa,EAAA,EAA6C;AACzD,IAAA,OAAO,KAAA,CAAM,qBAAkC,EAAE,CAAA;AAAA,EAClD;AAAA,EAEA,sBAAsB,GAAA,EAA8B;AACnD,IAAA,OAAO,KAAA,CAAM,qBAAA,CAAmC,GAAG,GAAG,CAAA;AAAA,EACvD;AAAA,EAGA,IAAA,GAAqB;AACpB,IAAA,OAAO,UAAA,CAAU,IAAA;AAAA,EAClB;AAED,CAAA;AAGA,IAAM,QAAA,GAAW,IAAI,SAAA,EAAU;AAC/B,IAAO,iBAAA,GAAQ","file":"chunk-JCOJGOXF.cjs","sourcesContent":["import { ApiResource } from '../resource'\nimport type { Resource, ResourceCreate, ResourceUpdate, ResourceId, ResourcesConfig, ResourceRel, ListResponse, ResourceSort, /* ResourceFilter */ } from '../resource'\nimport type { QueryParamsRetrieve, QueryParamsList } from '../query'\n\nimport type { CustomerGroup, CustomerGroupType } from './customer_groups'\nimport type { CustomerAddress } from './customer_addresses'\nimport type { CustomerPaymentSource } from './customer_payment_sources'\nimport type { CustomerSubscription } from './customer_subscriptions'\nimport type { Order } from './orders'\nimport type { OrderSubscription } from './order_subscriptions'\nimport type { Return } from './returns'\nimport type { SkuList } from './sku_lists'\nimport type { Attachment } from './attachments'\nimport type { Event } from './events'\nimport type { Tag, TagType } from './tags'\nimport type { Market } from './markets'\nimport type { StockLocation } from './stock_locations'\nimport type { EventStore } from './event_stores'\n\n\ntype CustomerType = 'customers'\ntype CustomerRel = ResourceRel & { type: CustomerType }\ntype CustomerGroupRel = ResourceRel & { type: CustomerGroupType }\ntype TagRel = ResourceRel & { type: TagType }\n\n\nexport type CustomerSort = Pick<Customer, 'id' | 'email' | 'status' | 'total_orders_count' | 'anonymization_status'> & ResourceSort\n// export type CustomerFilter = Pick<Customer, 'id' | 'email' | 'status' | 'total_orders_count' | 'anonymization_status'> & ResourceFilter\n\n\ninterface Customer extends Resource {\n\t\n\treadonly type: CustomerType\n\n\t/** \n\t * The customer's email address.\n\t * @example ```\"john@example.com\"```\n\t */\n\temail: string\n\t/** \n\t * The customer's status. One of 'prospect' (default), 'acquired', or 'repeat'.\n\t * @example ```\"prospect\"```\n\t */\n\tstatus: 'prospect' | 'acquired' | 'repeat'\n\t/** \n\t * Indicates if the customer has a password.\n\t */\n\thas_password?: boolean | null\n\t/** \n\t * The total number of orders for the customer.\n\t * @example ```6```\n\t */\n\ttotal_orders_count?: number | null\n\t/** \n\t * A reference to uniquely identify the shopper during payment sessions.\n\t * @example ```\"xxx-yyy-zzz\"```\n\t */\n\tshopper_reference?: string | null\n\t/** \n\t * A reference to uniquely identify the customer on any connected external services.\n\t * @example ```\"xxx-yyy-zzz\"```\n\t */\n\tprofile_id?: string | null\n\t/** \n\t * A specific code to identify the tax exemption reason for this customer.\n\t * @example ```\"xxx-yyy-zzz\"```\n\t */\n\ttax_exemption_code?: string | null\n\t/** \n\t * The custom_claim attached to the current JWT (if any).\n\t * @example ```{}```\n\t */\n\tjwt_custom_claim?: Record<string, any> | null\n\t/** \n\t * The anonymization info object.\n\t * @example ```{\"status\":\"requested\",\"requested_at\":\"2025-03-15 11:39:21 UTC\",\"requester\":{\"id\":\"fdgt56hh\",\"first_name\":\"Travis\",\"last_name\":\"Muller\",\"email\":\"test@labadie.test\"}}```\n\t */\n\tanonymization_info?: Record<string, any> | null\n\t/** \n\t * Status of the current anonymization request (if any).\n\t * @example ```\"requested\"```\n\t */\n\tanonymization_status?: string | null\n\n\tcustomer_group?: CustomerGroup | null\n\tcustomer_addresses?: CustomerAddress[] | null\n\tcustomer_payment_sources?: CustomerPaymentSource[] | null\n\tcustomer_subscriptions?: CustomerSubscription[] | null\n\torders?: Order[] | null\n\torder_subscriptions?: OrderSubscription[] | null\n\treturns?: Return[] | null\n\tsku_lists?: SkuList[] | null\n\tattachments?: Attachment[] | null\n\tevents?: Event[] | null\n\ttags?: Tag[] | null\n\tjwt_customer?: Customer | null\n\tjwt_markets?: Market[] | null\n\tjwt_stock_locations?: StockLocation[] | null\n\tevent_stores?: EventStore[] | null\n\n}\n\n\ninterface CustomerCreate extends ResourceCreate {\n\t\n\t/** \n\t * The customer's email address.\n\t * @example ```\"john@example.com\"```\n\t */\n\temail: string\n\t/** \n\t * The customer's password. Initiate a customer password reset flow if you need to change it.\n\t * @example ```\"secret\"```\n\t */\n\tpassword?: string | null\n\t/** \n\t * A reference to uniquely identify the shopper during payment sessions.\n\t * @example ```\"xxx-yyy-zzz\"```\n\t */\n\tshopper_reference?: string | null\n\t/** \n\t * A reference to uniquely identify the customer on any connected external services.\n\t * @example ```\"xxx-yyy-zzz\"```\n\t */\n\tprofile_id?: string | null\n\t/** \n\t * A specific code to identify the tax exemption reason for this customer.\n\t * @example ```\"xxx-yyy-zzz\"```\n\t */\n\ttax_exemption_code?: string | null\n\n\tcustomer_group?: CustomerGroupRel | null\n\ttags?: TagRel[] | null\n\n}\n\n\ninterface CustomerUpdate extends ResourceUpdate {\n\t\n\t/** \n\t * The customer's email address.\n\t * @example ```\"john@example.com\"```\n\t */\n\temail?: string | null\n\t/** \n\t * The customer's password. Initiate a customer password reset flow if you need to change it.\n\t * @example ```\"secret\"```\n\t */\n\tpassword?: string | null\n\t/** \n\t * A reference to uniquely identify the shopper during payment sessions.\n\t * @example ```\"xxx-yyy-zzz\"```\n\t */\n\tshopper_reference?: string | null\n\t/** \n\t * A reference to uniquely identify the customer on any connected external services.\n\t * @example ```\"xxx-yyy-zzz\"```\n\t */\n\tprofile_id?: string | null\n\t/** \n\t * A specific code to identify the tax exemption reason for this customer.\n\t * @example ```\"xxx-yyy-zzz\"```\n\t */\n\ttax_exemption_code?: string | null\n\t/** \n\t * Comma separated list of tags to be added. Duplicates, invalid and non existing ones are discarded. Cannot be passed by sales channels.\n\t */\n\t_add_tags?: string | null\n\t/** \n\t * Comma separated list of tags to be removed. Duplicates, invalid and non existing ones are discarded. Cannot be passed by sales channels.\n\t */\n\t_remove_tags?: string | null\n\t/** \n\t * Send this attribute if you want to trigger anonymization. Cannot be passed by sales channels.\n\t * @example ```true```\n\t */\n\t_request_anonymization?: boolean | null\n\t/** \n\t * Send this attribute if you want to trigger a cancellation of anonymization. Cannot be passed by sales channels.\n\t * @example ```true```\n\t */\n\t_cancel_anonymization?: boolean | null\n\n\tcustomer_group?: CustomerGroupRel | null\n\ttags?: TagRel[] | null\n\n}\n\n\nclass Customers extends ApiResource<Customer> {\n\n\tstatic readonly TYPE: CustomerType = 'customers' as const\n\n\tasync create(resource: CustomerCreate, params?: QueryParamsRetrieve<Customer>, options?: ResourcesConfig): Promise<Customer> {\n\t\treturn this.resources.create<CustomerCreate, Customer>({ ...resource, type: Customers.TYPE }, params, options)\n\t}\n\n\tasync update(resource: CustomerUpdate, params?: QueryParamsRetrieve<Customer>, options?: ResourcesConfig): Promise<Customer> {\n\t\treturn this.resources.update<CustomerUpdate, Customer>({ ...resource, type: Customers.TYPE }, params, options)\n\t}\n\n\tasync delete(id: string | ResourceId, options?: ResourcesConfig): Promise<void> {\n\t\tawait this.resources.delete((typeof id === 'string')? { id, type: Customers.TYPE } : id, options)\n\t}\n\n\tasync customer_group(customerId: string | Customer, params?: QueryParamsRetrieve<CustomerGroup>, options?: ResourcesConfig): Promise<CustomerGroup> {\n\t\tconst _customerId = (customerId as Customer).id || customerId as string\n\t\treturn this.resources.fetch<CustomerGroup>({ type: 'customer_groups' }, `customers/${_customerId}/customer_group`, params, options) as unknown as CustomerGroup\n\t}\n\n\tasync customer_addresses(customerId: string | Customer, params?: QueryParamsList<CustomerAddress>, options?: ResourcesConfig): Promise<ListResponse<CustomerAddress>> {\n\t\tconst _customerId = (customerId as Customer).id || customerId as string\n\t\treturn this.resources.fetch<CustomerAddress>({ type: 'customer_addresses' }, `customers/${_customerId}/customer_addresses`, params, options) as unknown as ListResponse<CustomerAddress>\n\t}\n\n\tasync customer_payment_sources(customerId: string | Customer, params?: QueryParamsList<CustomerPaymentSource>, options?: ResourcesConfig): Promise<ListResponse<CustomerPaymentSource>> {\n\t\tconst _customerId = (customerId as Customer).id || customerId as string\n\t\treturn this.resources.fetch<CustomerPaymentSource>({ type: 'customer_payment_sources' }, `customers/${_customerId}/customer_payment_sources`, params, options) as unknown as ListResponse<CustomerPaymentSource>\n\t}\n\n\tasync customer_subscriptions(customerId: string | Customer, params?: QueryParamsList<CustomerSubscription>, options?: ResourcesConfig): Promise<ListResponse<CustomerSubscription>> {\n\t\tconst _customerId = (customerId as Customer).id || customerId as string\n\t\treturn this.resources.fetch<CustomerSubscription>({ type: 'customer_subscriptions' }, `customers/${_customerId}/customer_subscriptions`, params, options) as unknown as ListResponse<CustomerSubscription>\n\t}\n\n\tasync orders(customerId: string | Customer, params?: QueryParamsList<Order>, options?: ResourcesConfig): Promise<ListResponse<Order>> {\n\t\tconst _customerId = (customerId as Customer).id || customerId as string\n\t\treturn this.resources.fetch<Order>({ type: 'orders' }, `customers/${_customerId}/orders`, params, options) as unknown as ListResponse<Order>\n\t}\n\n\tasync order_subscriptions(customerId: string | Customer, params?: QueryParamsList<OrderSubscription>, options?: ResourcesConfig): Promise<ListResponse<OrderSubscription>> {\n\t\tconst _customerId = (customerId as Customer).id || customerId as string\n\t\treturn this.resources.fetch<OrderSubscription>({ type: 'order_subscriptions' }, `customers/${_customerId}/order_subscriptions`, params, options) as unknown as ListResponse<OrderSubscription>\n\t}\n\n\tasync returns(customerId: string | Customer, params?: QueryParamsList<Return>, options?: ResourcesConfig): Promise<ListResponse<Return>> {\n\t\tconst _customerId = (customerId as Customer).id || customerId as string\n\t\treturn this.resources.fetch<Return>({ type: 'returns' }, `customers/${_customerId}/returns`, params, options) as unknown as ListResponse<Return>\n\t}\n\n\tasync sku_lists(customerId: string | Customer, params?: QueryParamsList<SkuList>, options?: ResourcesConfig): Promise<ListResponse<SkuList>> {\n\t\tconst _customerId = (customerId as Customer).id || customerId as string\n\t\treturn this.resources.fetch<SkuList>({ type: 'sku_lists' }, `customers/${_customerId}/sku_lists`, params, options) as unknown as ListResponse<SkuList>\n\t}\n\n\tasync attachments(customerId: string | Customer, params?: QueryParamsList<Attachment>, options?: ResourcesConfig): Promise<ListResponse<Attachment>> {\n\t\tconst _customerId = (customerId as Customer).id || customerId as string\n\t\treturn this.resources.fetch<Attachment>({ type: 'attachments' }, `customers/${_customerId}/attachments`, params, options) as unknown as ListResponse<Attachment>\n\t}\n\n\tasync events(customerId: string | Customer, params?: QueryParamsList<Event>, options?: ResourcesConfig): Promise<ListResponse<Event>> {\n\t\tconst _customerId = (customerId as Customer).id || customerId as string\n\t\treturn this.resources.fetch<Event>({ type: 'events' }, `customers/${_customerId}/events`, params, options) as unknown as ListResponse<Event>\n\t}\n\n\tasync tags(customerId: string | Customer, params?: QueryParamsList<Tag>, options?: ResourcesConfig): Promise<ListResponse<Tag>> {\n\t\tconst _customerId = (customerId as Customer).id || customerId as string\n\t\treturn this.resources.fetch<Tag>({ type: 'tags' }, `customers/${_customerId}/tags`, params, options) as unknown as ListResponse<Tag>\n\t}\n\n\tasync jwt_customer(customerId: string | Customer, params?: QueryParamsRetrieve<Customer>, options?: ResourcesConfig): Promise<Customer> {\n\t\tconst _customerId = (customerId as Customer).id || customerId as string\n\t\treturn this.resources.fetch<Customer>({ type: 'customers' }, `customers/${_customerId}/jwt_customer`, params, options) as unknown as Customer\n\t}\n\n\tasync jwt_markets(customerId: string | Customer, params?: QueryParamsList<Market>, options?: ResourcesConfig): Promise<ListResponse<Market>> {\n\t\tconst _customerId = (customerId as Customer).id || customerId as string\n\t\treturn this.resources.fetch<Market>({ type: 'markets' }, `customers/${_customerId}/jwt_markets`, params, options) as unknown as ListResponse<Market>\n\t}\n\n\tasync jwt_stock_locations(customerId: string | Customer, params?: QueryParamsList<StockLocation>, options?: ResourcesConfig): Promise<ListResponse<StockLocation>> {\n\t\tconst _customerId = (customerId as Customer).id || customerId as string\n\t\treturn this.resources.fetch<StockLocation>({ type: 'stock_locations' }, `customers/${_customerId}/jwt_stock_locations`, params, options) as unknown as ListResponse<StockLocation>\n\t}\n\n\tasync event_stores(customerId: string | Customer, params?: QueryParamsList<EventStore>, options?: ResourcesConfig): Promise<ListResponse<EventStore>> {\n\t\tconst _customerId = (customerId as Customer).id || customerId as string\n\t\treturn this.resources.fetch<EventStore>({ type: 'event_stores' }, `customers/${_customerId}/event_stores`, params, options) as unknown as ListResponse<EventStore>\n\t}\n\n\tasync _add_tags(id: string | Customer, triggerValue: string, params?: QueryParamsRetrieve<Customer>, options?: ResourcesConfig): Promise<Customer> {\n\t\treturn this.resources.update<CustomerUpdate, Customer>({ id: (typeof id === 'string')? id: id.id, type: Customers.TYPE, _add_tags: triggerValue }, params, options)\n\t}\n\n\tasync _remove_tags(id: string | Customer, triggerValue: string, params?: QueryParamsRetrieve<Customer>, options?: ResourcesConfig): Promise<Customer> {\n\t\treturn this.resources.update<CustomerUpdate, Customer>({ id: (typeof id === 'string')? id: id.id, type: Customers.TYPE, _remove_tags: triggerValue }, params, options)\n\t}\n\n\tasync _request_anonymization(id: string | Customer, params?: QueryParamsRetrieve<Customer>, options?: ResourcesConfig): Promise<Customer> {\n\t\treturn this.resources.update<CustomerUpdate, Customer>({ id: (typeof id === 'string')? id: id.id, type: Customers.TYPE, _request_anonymization: true }, params, options)\n\t}\n\n\tasync _cancel_anonymization(id: string | Customer, params?: QueryParamsRetrieve<Customer>, options?: ResourcesConfig): Promise<Customer> {\n\t\treturn this.resources.update<CustomerUpdate, Customer>({ id: (typeof id === 'string')? id: id.id, type: Customers.TYPE, _cancel_anonymization: true }, params, options)\n\t}\n\n\n\tisCustomer(resource: any): resource is Customer {\n\t\treturn resource.type && (resource.type === Customers.TYPE)\n\t}\n\n\n\trelationship(id: string | ResourceId | null): CustomerRel {\n\t\treturn super.relationshipOneToOne<CustomerRel>(id)\n\t}\n\n\trelationshipToMany(...ids: string[]): CustomerRel[] {\n\t\treturn super.relationshipOneToMany<CustomerRel>(...ids)\n\t}\n\n\n\ttype(): CustomerType {\n\t\treturn Customers.TYPE\n\t}\n\n}\n\n\nconst instance = new Customers()\nexport default instance\n\nexport type { Customers, Customer, CustomerCreate, CustomerUpdate, CustomerType }\n"]}