UNPKG

@apideck/node

Version:
1,793 lines (1,529 loc) 115 kB
/* tslint:disable */ /* eslint-disable */ /** * Apideck * The Apideck OpenAPI Spec: SDK Optimized * * The version of the OpenAPI document: 10.13.0 * Contact: support@apideck.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import { CreateItemResponse, CreateItemResponseFromJSON, CreateLocationResponse, CreateLocationResponseFromJSON, CreateMerchantResponse, CreateMerchantResponseFromJSON, CreateModifierGroupResponse, CreateModifierGroupResponseFromJSON, CreateModifierResponse, CreateModifierResponseFromJSON, CreateOrderResponse, CreateOrderResponseFromJSON, CreateOrderTypeResponse, CreateOrderTypeResponseFromJSON, CreatePosPaymentResponse, CreatePosPaymentResponseFromJSON, CreateTenderResponse, CreateTenderResponseFromJSON, DeleteItemResponse, DeleteItemResponseFromJSON, DeleteLocationResponse, DeleteLocationResponseFromJSON, DeleteMerchantResponse, DeleteMerchantResponseFromJSON, DeleteModifierGroupResponse, DeleteModifierGroupResponseFromJSON, DeleteModifierResponse, DeleteModifierResponseFromJSON, DeleteOrderResponse, DeleteOrderResponseFromJSON, DeleteOrderTypeResponse, DeleteOrderTypeResponseFromJSON, DeletePosPaymentResponse, DeletePosPaymentResponseFromJSON, DeleteTenderResponse, DeleteTenderResponseFromJSON, GetItemResponse, GetItemResponseFromJSON, GetItemsResponse, GetItemsResponseFromJSON, GetLocationResponse, GetLocationResponseFromJSON, GetLocationsResponse, GetLocationsResponseFromJSON, GetMerchantResponse, GetMerchantResponseFromJSON, GetMerchantsResponse, GetMerchantsResponseFromJSON, GetModifierGroupResponse, GetModifierGroupResponseFromJSON, GetModifierGroupsResponse, GetModifierGroupsResponseFromJSON, GetModifierResponse, GetModifierResponseFromJSON, GetModifiersResponse, GetModifiersResponseFromJSON, GetOrderResponse, GetOrderResponseFromJSON, GetOrdersResponse, GetOrdersResponseFromJSON, GetOrderTypeResponse, GetOrderTypeResponseFromJSON, GetOrderTypesResponse, GetOrderTypesResponseFromJSON, GetPosPaymentResponse, GetPosPaymentResponseFromJSON, GetPosPaymentsResponse, GetPosPaymentsResponseFromJSON, GetTenderResponse, GetTenderResponseFromJSON, GetTendersResponse, GetTendersResponseFromJSON, Item, ItemToJSON, Location, LocationToJSON, Merchant, MerchantToJSON, Modifier, ModifierGroup, ModifierGroupFilter, ModifierGroupToJSON, ModifierToJSON, Order, OrderToJSON, OrderType, OrderTypeToJSON, PosPayment, PosPaymentToJSON, Tender, TenderToJSON, UpdateItemResponse, UpdateItemResponseFromJSON, UpdateLocationResponse, UpdateLocationResponseFromJSON, UpdateMerchantResponse, UpdateMerchantResponseFromJSON, UpdateModifierGroupResponse, UpdateModifierGroupResponseFromJSON, UpdateModifierResponse, UpdateModifierResponseFromJSON, UpdateOrderResponse, UpdateOrderResponseFromJSON, UpdateOrderTypeResponse, UpdateOrderTypeResponseFromJSON, UpdatePosPaymentResponse, UpdatePosPaymentResponseFromJSON, UpdateTenderResponse, UpdateTenderResponseFromJSON } from '../models' import * as runtime from '../runtime' export interface PosApiItemsAddRequest { item: Item raw?: boolean consumerId?: string appId?: string serviceId?: string } export interface PosApiItemsAllRequest { raw?: boolean consumerId?: string appId?: string serviceId?: string cursor?: string | null limit?: number fields?: string | null } export interface PosApiItemsDeleteRequest { id: string consumerId?: string appId?: string serviceId?: string raw?: boolean } export interface PosApiItemsOneRequest { id: string consumerId?: string appId?: string serviceId?: string raw?: boolean fields?: string | null } export interface PosApiItemsUpdateRequest { id: string item: Item consumerId?: string appId?: string serviceId?: string raw?: boolean } export interface PosApiLocationsAddRequest { location: Location raw?: boolean consumerId?: string appId?: string serviceId?: string } export interface PosApiLocationsAllRequest { raw?: boolean consumerId?: string appId?: string serviceId?: string cursor?: string | null limit?: number fields?: string | null } export interface PosApiLocationsDeleteRequest { id: string consumerId?: string appId?: string serviceId?: string raw?: boolean } export interface PosApiLocationsOneRequest { id: string consumerId?: string appId?: string serviceId?: string raw?: boolean fields?: string | null } export interface PosApiLocationsUpdateRequest { id: string location: Location consumerId?: string appId?: string serviceId?: string raw?: boolean } export interface PosApiMerchantsAddRequest { merchant: Merchant raw?: boolean consumerId?: string appId?: string serviceId?: string } export interface PosApiMerchantsAllRequest { raw?: boolean consumerId?: string appId?: string serviceId?: string cursor?: string | null limit?: number fields?: string | null } export interface PosApiMerchantsDeleteRequest { id: string consumerId?: string appId?: string serviceId?: string raw?: boolean } export interface PosApiMerchantsOneRequest { id: string consumerId?: string appId?: string serviceId?: string raw?: boolean fields?: string | null } export interface PosApiMerchantsUpdateRequest { id: string merchant: Merchant consumerId?: string appId?: string serviceId?: string raw?: boolean } export interface PosApiModifierGroupsAddRequest { modifierGroup: ModifierGroup raw?: boolean consumerId?: string appId?: string serviceId?: string } export interface PosApiModifierGroupsAllRequest { raw?: boolean consumerId?: string appId?: string serviceId?: string cursor?: string | null limit?: number fields?: string | null } export interface PosApiModifierGroupsDeleteRequest { id: string consumerId?: string appId?: string serviceId?: string raw?: boolean } export interface PosApiModifierGroupsOneRequest { id: string consumerId?: string appId?: string serviceId?: string raw?: boolean fields?: string | null } export interface PosApiModifierGroupsUpdateRequest { id: string modifierGroup: ModifierGroup consumerId?: string appId?: string serviceId?: string raw?: boolean } export interface PosApiModifiersAddRequest { modifier: Modifier raw?: boolean consumerId?: string appId?: string serviceId?: string } export interface PosApiModifiersAllRequest { raw?: boolean consumerId?: string appId?: string serviceId?: string cursor?: string | null limit?: number fields?: string | null } export interface PosApiModifiersDeleteRequest { id: string consumerId?: string appId?: string serviceId?: string raw?: boolean filter?: ModifierGroupFilter } export interface PosApiModifiersOneRequest { id: string consumerId?: string appId?: string serviceId?: string raw?: boolean filter?: ModifierGroupFilter fields?: string | null } export interface PosApiModifiersUpdateRequest { id: string modifier: Modifier consumerId?: string appId?: string serviceId?: string raw?: boolean } export interface PosApiOrderTypesAddRequest { orderType: OrderType raw?: boolean consumerId?: string appId?: string serviceId?: string } export interface PosApiOrderTypesAllRequest { raw?: boolean consumerId?: string appId?: string serviceId?: string cursor?: string | null limit?: number fields?: string | null } export interface PosApiOrderTypesDeleteRequest { id: string consumerId?: string appId?: string serviceId?: string raw?: boolean } export interface PosApiOrderTypesOneRequest { id: string consumerId?: string appId?: string serviceId?: string raw?: boolean fields?: string | null } export interface PosApiOrderTypesUpdateRequest { id: string orderType: OrderType consumerId?: string appId?: string serviceId?: string raw?: boolean } export interface PosApiOrdersAddRequest { order: Order raw?: boolean consumerId?: string appId?: string serviceId?: string } export interface PosApiOrdersAllRequest { raw?: boolean consumerId?: string appId?: string serviceId?: string cursor?: string | null limit?: number locationId?: string fields?: string | null } export interface PosApiOrdersDeleteRequest { id: string consumerId?: string appId?: string serviceId?: string raw?: boolean } export interface PosApiOrdersOneRequest { id: string consumerId?: string appId?: string serviceId?: string raw?: boolean fields?: string | null } export interface PosApiOrdersPayRequest { id: string order: Order raw?: boolean consumerId?: string appId?: string serviceId?: string fields?: string | null } export interface PosApiOrdersUpdateRequest { id: string order: Order consumerId?: string appId?: string serviceId?: string raw?: boolean } export interface PosApiPaymentsAddRequest { payment: PosPayment raw?: boolean consumerId?: string appId?: string serviceId?: string } export interface PosApiPaymentsAllRequest { raw?: boolean consumerId?: string appId?: string serviceId?: string cursor?: string | null limit?: number fields?: string | null } export interface PosApiPaymentsDeleteRequest { id: string consumerId?: string appId?: string serviceId?: string raw?: boolean } export interface PosApiPaymentsOneRequest { id: string consumerId?: string appId?: string serviceId?: string raw?: boolean fields?: string | null } export interface PosApiPaymentsUpdateRequest { id: string payment: PosPayment consumerId?: string appId?: string serviceId?: string raw?: boolean } export interface PosApiTendersAddRequest { tender: Tender raw?: boolean consumerId?: string appId?: string serviceId?: string } export interface PosApiTendersAllRequest { raw?: boolean consumerId?: string appId?: string serviceId?: string cursor?: string | null limit?: number fields?: string | null } export interface PosApiTendersDeleteRequest { id: string consumerId?: string appId?: string serviceId?: string raw?: boolean } export interface PosApiTendersOneRequest { id: string consumerId?: string appId?: string serviceId?: string raw?: boolean fields?: string | null } export interface PosApiTendersUpdateRequest { id: string tender: Tender consumerId?: string appId?: string serviceId?: string raw?: boolean } /** * */ export class PosApi extends runtime.BaseAPI { /** * Create Item * Create Item */ async itemsAddRaw( requestParameters: PosApiItemsAddRequest, initOverrides?: RequestInit ): Promise<runtime.ApiResponse<CreateItemResponse>> { if (requestParameters.item === null || requestParameters.item === undefined) { throw new runtime.RequiredError( 'item', 'Required parameter requestParameters.item was null or undefined when calling itemsAdd.' ) } const queryParameters: any = {} if (requestParameters.raw !== undefined) { queryParameters['raw'] = requestParameters.raw } const headerParameters: runtime.HTTPHeaders = {} headerParameters['Content-Type'] = 'application/json' if (requestParameters.consumerId !== undefined && requestParameters.consumerId !== null) { headerParameters['x-apideck-consumer-id'] = String(requestParameters.consumerId) } if (requestParameters.appId !== undefined && requestParameters.appId !== null) { headerParameters['x-apideck-app-id'] = String(requestParameters.appId) } if (requestParameters.serviceId !== undefined && requestParameters.serviceId !== null) { headerParameters['x-apideck-service-id'] = String(requestParameters.serviceId) } if (this.configuration && this.configuration.apiKey) { headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication } const response = await this.request( { path: `/pos/items`, method: 'POST', headers: headerParameters, query: queryParameters, body: ItemToJSON(requestParameters.item) }, initOverrides ) return new runtime.JSONApiResponse(response, jsonValue => CreateItemResponseFromJSON(jsonValue)) } /** * Create Item * Create Item */ async itemsAdd( requestParameters: PosApiItemsAddRequest, initOverrides?: RequestInit ): Promise<CreateItemResponse> { const response = await this.itemsAddRaw(requestParameters, initOverrides) return await response.value() } /** * List Items * List Items */ async itemsAllRaw( requestParameters: PosApiItemsAllRequest, initOverrides?: RequestInit ): Promise<runtime.ApiResponse<GetItemsResponse>> { const queryParameters: any = {} if (requestParameters.raw !== undefined) { queryParameters['raw'] = requestParameters.raw } if (requestParameters.cursor !== undefined) { queryParameters['cursor'] = requestParameters.cursor } if (requestParameters.limit !== undefined) { queryParameters['limit'] = requestParameters.limit } if (requestParameters.fields !== undefined) { queryParameters['fields'] = requestParameters.fields } const headerParameters: runtime.HTTPHeaders = {} if (requestParameters.consumerId !== undefined && requestParameters.consumerId !== null) { headerParameters['x-apideck-consumer-id'] = String(requestParameters.consumerId) } if (requestParameters.appId !== undefined && requestParameters.appId !== null) { headerParameters['x-apideck-app-id'] = String(requestParameters.appId) } if (requestParameters.serviceId !== undefined && requestParameters.serviceId !== null) { headerParameters['x-apideck-service-id'] = String(requestParameters.serviceId) } if (this.configuration && this.configuration.apiKey) { headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication } const response = await this.request( { path: `/pos/items`, method: 'GET', headers: headerParameters, query: queryParameters }, initOverrides ) return new runtime.JSONApiResponse(response, jsonValue => GetItemsResponseFromJSON(jsonValue)) } /** * List Items * List Items */ async itemsAll( requestParameters: PosApiItemsAllRequest = {}, initOverrides?: RequestInit ): Promise<GetItemsResponse> { const response = await this.itemsAllRaw(requestParameters, initOverrides) return await response.value() } /** * Delete Item * Delete Item */ async itemsDeleteRaw( requestParameters: PosApiItemsDeleteRequest, initOverrides?: RequestInit ): Promise<runtime.ApiResponse<DeleteItemResponse>> { if (requestParameters.id === null || requestParameters.id === undefined) { throw new runtime.RequiredError( 'id', 'Required parameter requestParameters.id was null or undefined when calling itemsDelete.' ) } const queryParameters: any = {} if (requestParameters.raw !== undefined) { queryParameters['raw'] = requestParameters.raw } const headerParameters: runtime.HTTPHeaders = {} if (requestParameters.consumerId !== undefined && requestParameters.consumerId !== null) { headerParameters['x-apideck-consumer-id'] = String(requestParameters.consumerId) } if (requestParameters.appId !== undefined && requestParameters.appId !== null) { headerParameters['x-apideck-app-id'] = String(requestParameters.appId) } if (requestParameters.serviceId !== undefined && requestParameters.serviceId !== null) { headerParameters['x-apideck-service-id'] = String(requestParameters.serviceId) } if (this.configuration && this.configuration.apiKey) { headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication } const response = await this.request( { path: `/pos/items/{id}`.replace( `{${'id'}}`, encodeURIComponent(String(requestParameters.id)) ), method: 'DELETE', headers: headerParameters, query: queryParameters }, initOverrides ) return new runtime.JSONApiResponse(response, jsonValue => DeleteItemResponseFromJSON(jsonValue)) } /** * Delete Item * Delete Item */ async itemsDelete( requestParameters: PosApiItemsDeleteRequest, initOverrides?: RequestInit ): Promise<DeleteItemResponse> { const response = await this.itemsDeleteRaw(requestParameters, initOverrides) return await response.value() } /** * Get Item * Get Item */ async itemsOneRaw( requestParameters: PosApiItemsOneRequest, initOverrides?: RequestInit ): Promise<runtime.ApiResponse<GetItemResponse>> { if (requestParameters.id === null || requestParameters.id === undefined) { throw new runtime.RequiredError( 'id', 'Required parameter requestParameters.id was null or undefined when calling itemsOne.' ) } const queryParameters: any = {} if (requestParameters.raw !== undefined) { queryParameters['raw'] = requestParameters.raw } if (requestParameters.fields !== undefined) { queryParameters['fields'] = requestParameters.fields } const headerParameters: runtime.HTTPHeaders = {} if (requestParameters.consumerId !== undefined && requestParameters.consumerId !== null) { headerParameters['x-apideck-consumer-id'] = String(requestParameters.consumerId) } if (requestParameters.appId !== undefined && requestParameters.appId !== null) { headerParameters['x-apideck-app-id'] = String(requestParameters.appId) } if (requestParameters.serviceId !== undefined && requestParameters.serviceId !== null) { headerParameters['x-apideck-service-id'] = String(requestParameters.serviceId) } if (this.configuration && this.configuration.apiKey) { headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication } const response = await this.request( { path: `/pos/items/{id}`.replace( `{${'id'}}`, encodeURIComponent(String(requestParameters.id)) ), method: 'GET', headers: headerParameters, query: queryParameters }, initOverrides ) return new runtime.JSONApiResponse(response, jsonValue => GetItemResponseFromJSON(jsonValue)) } /** * Get Item * Get Item */ async itemsOne( requestParameters: PosApiItemsOneRequest, initOverrides?: RequestInit ): Promise<GetItemResponse> { const response = await this.itemsOneRaw(requestParameters, initOverrides) return await response.value() } /** * Update Item * Update Item */ async itemsUpdateRaw( requestParameters: PosApiItemsUpdateRequest, initOverrides?: RequestInit ): Promise<runtime.ApiResponse<UpdateItemResponse>> { if (requestParameters.id === null || requestParameters.id === undefined) { throw new runtime.RequiredError( 'id', 'Required parameter requestParameters.id was null or undefined when calling itemsUpdate.' ) } if (requestParameters.item === null || requestParameters.item === undefined) { throw new runtime.RequiredError( 'item', 'Required parameter requestParameters.item was null or undefined when calling itemsUpdate.' ) } const queryParameters: any = {} if (requestParameters.raw !== undefined) { queryParameters['raw'] = requestParameters.raw } const headerParameters: runtime.HTTPHeaders = {} headerParameters['Content-Type'] = 'application/json' if (requestParameters.consumerId !== undefined && requestParameters.consumerId !== null) { headerParameters['x-apideck-consumer-id'] = String(requestParameters.consumerId) } if (requestParameters.appId !== undefined && requestParameters.appId !== null) { headerParameters['x-apideck-app-id'] = String(requestParameters.appId) } if (requestParameters.serviceId !== undefined && requestParameters.serviceId !== null) { headerParameters['x-apideck-service-id'] = String(requestParameters.serviceId) } if (this.configuration && this.configuration.apiKey) { headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication } const response = await this.request( { path: `/pos/items/{id}`.replace( `{${'id'}}`, encodeURIComponent(String(requestParameters.id)) ), method: 'PATCH', headers: headerParameters, query: queryParameters, body: ItemToJSON(requestParameters.item) }, initOverrides ) return new runtime.JSONApiResponse(response, jsonValue => UpdateItemResponseFromJSON(jsonValue)) } /** * Update Item * Update Item */ async itemsUpdate( requestParameters: PosApiItemsUpdateRequest, initOverrides?: RequestInit ): Promise<UpdateItemResponse> { const response = await this.itemsUpdateRaw(requestParameters, initOverrides) return await response.value() } /** * Create Location * Create Location */ async locationsAddRaw( requestParameters: PosApiLocationsAddRequest, initOverrides?: RequestInit ): Promise<runtime.ApiResponse<CreateLocationResponse>> { if (requestParameters.location === null || requestParameters.location === undefined) { throw new runtime.RequiredError( 'location', 'Required parameter requestParameters.location was null or undefined when calling locationsAdd.' ) } const queryParameters: any = {} if (requestParameters.raw !== undefined) { queryParameters['raw'] = requestParameters.raw } const headerParameters: runtime.HTTPHeaders = {} headerParameters['Content-Type'] = 'application/json' if (requestParameters.consumerId !== undefined && requestParameters.consumerId !== null) { headerParameters['x-apideck-consumer-id'] = String(requestParameters.consumerId) } if (requestParameters.appId !== undefined && requestParameters.appId !== null) { headerParameters['x-apideck-app-id'] = String(requestParameters.appId) } if (requestParameters.serviceId !== undefined && requestParameters.serviceId !== null) { headerParameters['x-apideck-service-id'] = String(requestParameters.serviceId) } if (this.configuration && this.configuration.apiKey) { headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication } const response = await this.request( { path: `/pos/locations`, method: 'POST', headers: headerParameters, query: queryParameters, body: LocationToJSON(requestParameters.location) }, initOverrides ) return new runtime.JSONApiResponse(response, jsonValue => CreateLocationResponseFromJSON(jsonValue) ) } /** * Create Location * Create Location */ async locationsAdd( requestParameters: PosApiLocationsAddRequest, initOverrides?: RequestInit ): Promise<CreateLocationResponse> { const response = await this.locationsAddRaw(requestParameters, initOverrides) return await response.value() } /** * List Locations * List Locations */ async locationsAllRaw( requestParameters: PosApiLocationsAllRequest, initOverrides?: RequestInit ): Promise<runtime.ApiResponse<GetLocationsResponse>> { const queryParameters: any = {} if (requestParameters.raw !== undefined) { queryParameters['raw'] = requestParameters.raw } if (requestParameters.cursor !== undefined) { queryParameters['cursor'] = requestParameters.cursor } if (requestParameters.limit !== undefined) { queryParameters['limit'] = requestParameters.limit } if (requestParameters.fields !== undefined) { queryParameters['fields'] = requestParameters.fields } const headerParameters: runtime.HTTPHeaders = {} if (requestParameters.consumerId !== undefined && requestParameters.consumerId !== null) { headerParameters['x-apideck-consumer-id'] = String(requestParameters.consumerId) } if (requestParameters.appId !== undefined && requestParameters.appId !== null) { headerParameters['x-apideck-app-id'] = String(requestParameters.appId) } if (requestParameters.serviceId !== undefined && requestParameters.serviceId !== null) { headerParameters['x-apideck-service-id'] = String(requestParameters.serviceId) } if (this.configuration && this.configuration.apiKey) { headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication } const response = await this.request( { path: `/pos/locations`, method: 'GET', headers: headerParameters, query: queryParameters }, initOverrides ) return new runtime.JSONApiResponse(response, jsonValue => GetLocationsResponseFromJSON(jsonValue) ) } /** * List Locations * List Locations */ async locationsAll( requestParameters: PosApiLocationsAllRequest = {}, initOverrides?: RequestInit ): Promise<GetLocationsResponse> { const response = await this.locationsAllRaw(requestParameters, initOverrides) return await response.value() } /** * Delete Location * Delete Location */ async locationsDeleteRaw( requestParameters: PosApiLocationsDeleteRequest, initOverrides?: RequestInit ): Promise<runtime.ApiResponse<DeleteLocationResponse>> { if (requestParameters.id === null || requestParameters.id === undefined) { throw new runtime.RequiredError( 'id', 'Required parameter requestParameters.id was null or undefined when calling locationsDelete.' ) } const queryParameters: any = {} if (requestParameters.raw !== undefined) { queryParameters['raw'] = requestParameters.raw } const headerParameters: runtime.HTTPHeaders = {} if (requestParameters.consumerId !== undefined && requestParameters.consumerId !== null) { headerParameters['x-apideck-consumer-id'] = String(requestParameters.consumerId) } if (requestParameters.appId !== undefined && requestParameters.appId !== null) { headerParameters['x-apideck-app-id'] = String(requestParameters.appId) } if (requestParameters.serviceId !== undefined && requestParameters.serviceId !== null) { headerParameters['x-apideck-service-id'] = String(requestParameters.serviceId) } if (this.configuration && this.configuration.apiKey) { headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication } const response = await this.request( { path: `/pos/locations/{id}`.replace( `{${'id'}}`, encodeURIComponent(String(requestParameters.id)) ), method: 'DELETE', headers: headerParameters, query: queryParameters }, initOverrides ) return new runtime.JSONApiResponse(response, jsonValue => DeleteLocationResponseFromJSON(jsonValue) ) } /** * Delete Location * Delete Location */ async locationsDelete( requestParameters: PosApiLocationsDeleteRequest, initOverrides?: RequestInit ): Promise<DeleteLocationResponse> { const response = await this.locationsDeleteRaw(requestParameters, initOverrides) return await response.value() } /** * Get Location * Get Location */ async locationsOneRaw( requestParameters: PosApiLocationsOneRequest, initOverrides?: RequestInit ): Promise<runtime.ApiResponse<GetLocationResponse>> { if (requestParameters.id === null || requestParameters.id === undefined) { throw new runtime.RequiredError( 'id', 'Required parameter requestParameters.id was null or undefined when calling locationsOne.' ) } const queryParameters: any = {} if (requestParameters.raw !== undefined) { queryParameters['raw'] = requestParameters.raw } if (requestParameters.fields !== undefined) { queryParameters['fields'] = requestParameters.fields } const headerParameters: runtime.HTTPHeaders = {} if (requestParameters.consumerId !== undefined && requestParameters.consumerId !== null) { headerParameters['x-apideck-consumer-id'] = String(requestParameters.consumerId) } if (requestParameters.appId !== undefined && requestParameters.appId !== null) { headerParameters['x-apideck-app-id'] = String(requestParameters.appId) } if (requestParameters.serviceId !== undefined && requestParameters.serviceId !== null) { headerParameters['x-apideck-service-id'] = String(requestParameters.serviceId) } if (this.configuration && this.configuration.apiKey) { headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication } const response = await this.request( { path: `/pos/locations/{id}`.replace( `{${'id'}}`, encodeURIComponent(String(requestParameters.id)) ), method: 'GET', headers: headerParameters, query: queryParameters }, initOverrides ) return new runtime.JSONApiResponse(response, jsonValue => GetLocationResponseFromJSON(jsonValue) ) } /** * Get Location * Get Location */ async locationsOne( requestParameters: PosApiLocationsOneRequest, initOverrides?: RequestInit ): Promise<GetLocationResponse> { const response = await this.locationsOneRaw(requestParameters, initOverrides) return await response.value() } /** * Update Location * Update Location */ async locationsUpdateRaw( requestParameters: PosApiLocationsUpdateRequest, initOverrides?: RequestInit ): Promise<runtime.ApiResponse<UpdateLocationResponse>> { if (requestParameters.id === null || requestParameters.id === undefined) { throw new runtime.RequiredError( 'id', 'Required parameter requestParameters.id was null or undefined when calling locationsUpdate.' ) } if (requestParameters.location === null || requestParameters.location === undefined) { throw new runtime.RequiredError( 'location', 'Required parameter requestParameters.location was null or undefined when calling locationsUpdate.' ) } const queryParameters: any = {} if (requestParameters.raw !== undefined) { queryParameters['raw'] = requestParameters.raw } const headerParameters: runtime.HTTPHeaders = {} headerParameters['Content-Type'] = 'application/json' if (requestParameters.consumerId !== undefined && requestParameters.consumerId !== null) { headerParameters['x-apideck-consumer-id'] = String(requestParameters.consumerId) } if (requestParameters.appId !== undefined && requestParameters.appId !== null) { headerParameters['x-apideck-app-id'] = String(requestParameters.appId) } if (requestParameters.serviceId !== undefined && requestParameters.serviceId !== null) { headerParameters['x-apideck-service-id'] = String(requestParameters.serviceId) } if (this.configuration && this.configuration.apiKey) { headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication } const response = await this.request( { path: `/pos/locations/{id}`.replace( `{${'id'}}`, encodeURIComponent(String(requestParameters.id)) ), method: 'PATCH', headers: headerParameters, query: queryParameters, body: LocationToJSON(requestParameters.location) }, initOverrides ) return new runtime.JSONApiResponse(response, jsonValue => UpdateLocationResponseFromJSON(jsonValue) ) } /** * Update Location * Update Location */ async locationsUpdate( requestParameters: PosApiLocationsUpdateRequest, initOverrides?: RequestInit ): Promise<UpdateLocationResponse> { const response = await this.locationsUpdateRaw(requestParameters, initOverrides) return await response.value() } /** * Create Merchant * Create Merchant */ async merchantsAddRaw( requestParameters: PosApiMerchantsAddRequest, initOverrides?: RequestInit ): Promise<runtime.ApiResponse<CreateMerchantResponse>> { if (requestParameters.merchant === null || requestParameters.merchant === undefined) { throw new runtime.RequiredError( 'merchant', 'Required parameter requestParameters.merchant was null or undefined when calling merchantsAdd.' ) } const queryParameters: any = {} if (requestParameters.raw !== undefined) { queryParameters['raw'] = requestParameters.raw } const headerParameters: runtime.HTTPHeaders = {} headerParameters['Content-Type'] = 'application/json' if (requestParameters.consumerId !== undefined && requestParameters.consumerId !== null) { headerParameters['x-apideck-consumer-id'] = String(requestParameters.consumerId) } if (requestParameters.appId !== undefined && requestParameters.appId !== null) { headerParameters['x-apideck-app-id'] = String(requestParameters.appId) } if (requestParameters.serviceId !== undefined && requestParameters.serviceId !== null) { headerParameters['x-apideck-service-id'] = String(requestParameters.serviceId) } if (this.configuration && this.configuration.apiKey) { headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication } const response = await this.request( { path: `/pos/merchants`, method: 'POST', headers: headerParameters, query: queryParameters, body: MerchantToJSON(requestParameters.merchant) }, initOverrides ) return new runtime.JSONApiResponse(response, jsonValue => CreateMerchantResponseFromJSON(jsonValue) ) } /** * Create Merchant * Create Merchant */ async merchantsAdd( requestParameters: PosApiMerchantsAddRequest, initOverrides?: RequestInit ): Promise<CreateMerchantResponse> { const response = await this.merchantsAddRaw(requestParameters, initOverrides) return await response.value() } /** * List Merchants * List Merchants */ async merchantsAllRaw( requestParameters: PosApiMerchantsAllRequest, initOverrides?: RequestInit ): Promise<runtime.ApiResponse<GetMerchantsResponse>> { const queryParameters: any = {} if (requestParameters.raw !== undefined) { queryParameters['raw'] = requestParameters.raw } if (requestParameters.cursor !== undefined) { queryParameters['cursor'] = requestParameters.cursor } if (requestParameters.limit !== undefined) { queryParameters['limit'] = requestParameters.limit } if (requestParameters.fields !== undefined) { queryParameters['fields'] = requestParameters.fields } const headerParameters: runtime.HTTPHeaders = {} if (requestParameters.consumerId !== undefined && requestParameters.consumerId !== null) { headerParameters['x-apideck-consumer-id'] = String(requestParameters.consumerId) } if (requestParameters.appId !== undefined && requestParameters.appId !== null) { headerParameters['x-apideck-app-id'] = String(requestParameters.appId) } if (requestParameters.serviceId !== undefined && requestParameters.serviceId !== null) { headerParameters['x-apideck-service-id'] = String(requestParameters.serviceId) } if (this.configuration && this.configuration.apiKey) { headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication } const response = await this.request( { path: `/pos/merchants`, method: 'GET', headers: headerParameters, query: queryParameters }, initOverrides ) return new runtime.JSONApiResponse(response, jsonValue => GetMerchantsResponseFromJSON(jsonValue) ) } /** * List Merchants * List Merchants */ async merchantsAll( requestParameters: PosApiMerchantsAllRequest = {}, initOverrides?: RequestInit ): Promise<GetMerchantsResponse> { const response = await this.merchantsAllRaw(requestParameters, initOverrides) return await response.value() } /** * Delete Merchant * Delete Merchant */ async merchantsDeleteRaw( requestParameters: PosApiMerchantsDeleteRequest, initOverrides?: RequestInit ): Promise<runtime.ApiResponse<DeleteMerchantResponse>> { if (requestParameters.id === null || requestParameters.id === undefined) { throw new runtime.RequiredError( 'id', 'Required parameter requestParameters.id was null or undefined when calling merchantsDelete.' ) } const queryParameters: any = {} if (requestParameters.raw !== undefined) { queryParameters['raw'] = requestParameters.raw } const headerParameters: runtime.HTTPHeaders = {} if (requestParameters.consumerId !== undefined && requestParameters.consumerId !== null) { headerParameters['x-apideck-consumer-id'] = String(requestParameters.consumerId) } if (requestParameters.appId !== undefined && requestParameters.appId !== null) { headerParameters['x-apideck-app-id'] = String(requestParameters.appId) } if (requestParameters.serviceId !== undefined && requestParameters.serviceId !== null) { headerParameters['x-apideck-service-id'] = String(requestParameters.serviceId) } if (this.configuration && this.configuration.apiKey) { headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication } const response = await this.request( { path: `/pos/merchants/{id}`.replace( `{${'id'}}`, encodeURIComponent(String(requestParameters.id)) ), method: 'DELETE', headers: headerParameters, query: queryParameters }, initOverrides ) return new runtime.JSONApiResponse(response, jsonValue => DeleteMerchantResponseFromJSON(jsonValue) ) } /** * Delete Merchant * Delete Merchant */ async merchantsDelete( requestParameters: PosApiMerchantsDeleteRequest, initOverrides?: RequestInit ): Promise<DeleteMerchantResponse> { const response = await this.merchantsDeleteRaw(requestParameters, initOverrides) return await response.value() } /** * Get Merchant * Get Merchant */ async merchantsOneRaw( requestParameters: PosApiMerchantsOneRequest, initOverrides?: RequestInit ): Promise<runtime.ApiResponse<GetMerchantResponse>> { if (requestParameters.id === null || requestParameters.id === undefined) { throw new runtime.RequiredError( 'id', 'Required parameter requestParameters.id was null or undefined when calling merchantsOne.' ) } const queryParameters: any = {} if (requestParameters.raw !== undefined) { queryParameters['raw'] = requestParameters.raw } if (requestParameters.fields !== undefined) { queryParameters['fields'] = requestParameters.fields } const headerParameters: runtime.HTTPHeaders = {} if (requestParameters.consumerId !== undefined && requestParameters.consumerId !== null) { headerParameters['x-apideck-consumer-id'] = String(requestParameters.consumerId) } if (requestParameters.appId !== undefined && requestParameters.appId !== null) { headerParameters['x-apideck-app-id'] = String(requestParameters.appId) } if (requestParameters.serviceId !== undefined && requestParameters.serviceId !== null) { headerParameters['x-apideck-service-id'] = String(requestParameters.serviceId) } if (this.configuration && this.configuration.apiKey) { headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication } const response = await this.request( { path: `/pos/merchants/{id}`.replace( `{${'id'}}`, encodeURIComponent(String(requestParameters.id)) ), method: 'GET', headers: headerParameters, query: queryParameters }, initOverrides ) return new runtime.JSONApiResponse(response, jsonValue => GetMerchantResponseFromJSON(jsonValue) ) } /** * Get Merchant * Get Merchant */ async merchantsOne( requestParameters: PosApiMerchantsOneRequest, initOverrides?: RequestInit ): Promise<GetMerchantResponse> { const response = await this.merchantsOneRaw(requestParameters, initOverrides) return await response.value() } /** * Update Merchant * Update Merchant */ async merchantsUpdateRaw( requestParameters: PosApiMerchantsUpdateRequest, initOverrides?: RequestInit ): Promise<runtime.ApiResponse<UpdateMerchantResponse>> { if (requestParameters.id === null || requestParameters.id === undefined) { throw new runtime.RequiredError( 'id', 'Required parameter requestParameters.id was null or undefined when calling merchantsUpdate.' ) } if (requestParameters.merchant === null || requestParameters.merchant === undefined) { throw new runtime.RequiredError( 'merchant', 'Required parameter requestParameters.merchant was null or undefined when calling merchantsUpdate.' ) } const queryParameters: any = {} if (requestParameters.raw !== undefined) { queryParameters['raw'] = requestParameters.raw } const headerParameters: runtime.HTTPHeaders = {} headerParameters['Content-Type'] = 'application/json' if (requestParameters.consumerId !== undefined && requestParameters.consumerId !== null) { headerParameters['x-apideck-consumer-id'] = String(requestParameters.consumerId) } if (requestParameters.appId !== undefined && requestParameters.appId !== null) { headerParameters['x-apideck-app-id'] = String(requestParameters.appId) } if (requestParameters.serviceId !== undefined && requestParameters.serviceId !== null) { headerParameters['x-apideck-service-id'] = String(requestParameters.serviceId) } if (this.configuration && this.configuration.apiKey) { headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication } const response = await this.request( { path: `/pos/merchants/{id}`.replace( `{${'id'}}`, encodeURIComponent(String(requestParameters.id)) ), method: 'PATCH', headers: headerParameters, query: queryParameters, body: MerchantToJSON(requestParameters.merchant) }, initOverrides ) return new runtime.JSONApiResponse(response, jsonValue => UpdateMerchantResponseFromJSON(jsonValue) ) } /** * Update Merchant * Update Merchant */ async merchantsUpdate( requestParameters: PosApiMerchantsUpdateRequest, initOverrides?: RequestInit ): Promise<UpdateMerchantResponse> { const response = await this.merchantsUpdateRaw(requestParameters, initOverrides) return await response.value() } /** * Create Modifier Group * Create Modifier Group */ async modifierGroupsAddRaw( requestParameters: PosApiModifierGroupsAddRequest, initOverrides?: RequestInit ): Promise<runtime.ApiResponse<CreateModifierGroupResponse>> { if (requestParameters.modifierGroup === null || requestParameters.modifierGroup === undefined) { throw new runtime.RequiredError( 'modifierGroup', 'Required parameter requestParameters.modifierGroup was null or undefined when calling modifierGroupsAdd.' ) } const queryParameters: any = {} if (requestParameters.raw !== undefined) { queryParameters['raw'] = requestParameters.raw } const headerParameters: runtime.HTTPHeaders = {} headerParameters['Content-Type'] = 'application/json' if (requestParameters.consumerId !== undefined && requestParameters.consumerId !== null) { headerParameters['x-apideck-consumer-id'] = String(requestParameters.consumerId) } if (requestParameters.appId !== undefined && requestParameters.appId !== null) { headerParameters['x-apideck-app-id'] = String(requestParameters.appId) } if (requestParameters.serviceId !== undefined && requestParameters.serviceId !== null) { headerParameters['x-apideck-service-id'] = String(requestParameters.serviceId) } if (this.configuration && this.configuration.apiKey) { headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication } const response = await this.request( { path: `/pos/modifier-groups`, method: 'POST', headers: headerParameters, query: queryParameters, body: ModifierGroupToJSON(requestParameters.modifierGroup) }, initOverrides ) return new runtime.JSONApiResponse(response, jsonValue => CreateModifierGroupResponseFromJSON(jsonValue) ) } /** * Create Modifier Group * Create Modifier Group */ async modifierGroupsAdd( requestParameters: PosApiModifierGroupsAddRequest, initOverrides?: RequestInit ): Promise<CreateModifierGroupResponse> { const response = await this.modifierGroupsAddRaw(requestParameters, initOverrides) return await response.value() } /** * List Modifier Groups * List Modifier Groups */ async modifierGroupsAllRaw( requestParameters: PosApiModifierGroupsAllRequest, initOverrides?: RequestInit ): Promise<runtime.ApiResponse<GetModifierGroupsResponse>> { const queryParameters: any = {} if (requestParameters.raw !== undefined) { queryParameters['raw'] = requestParameters.raw } if (requestParameters.cursor !== undefined) { queryParameters['cursor'] = requestParameters.cursor } if (requestParameters.limit !== undefined) { queryParameters['limit'] = requestParameters.limit } if (requestParameters.fields !== undefined) { queryParameters['fields'] = requestParameters.fields } const headerParameters: runtime.HTTPHeaders = {} if (requestParameters.consumerId !== undefined && requestParameters.consumerId !== null) { headerParameters['x-apideck-consumer-id'] = String(requestParameters.consumerId) } if (requestParameters.appId !== undefined && requestParameters.appId !== null) { headerParameters['x-apideck-app-id'] = String(requestParameters.appId) } if (requestParameters.serviceId !== undefined && requestParameters.serviceId !== null) { headerParameters['x-apideck-service-id'] = String(requestParameters.serviceId) } if (this.configuration && this.configuration.apiKey) { headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication } const response = await this.request( { path: `/pos/modifier-groups`, method: 'GET', headers: headerParameters, query: queryParameters }, initOverrides ) return new runtime.JSONApiResponse(response, jsonValue => GetModifierGroupsResponseFromJSON(jsonValue) ) } /** * List Modifier Groups * List Modifier Groups */ async modifierGroupsAll( requestParameters: PosApiModifierGroupsAllRequest = {}, initOverrides?: RequestInit ): Promise<GetModifierGroupsResponse> { const response = await this.modifierGroupsAllRaw(requestParameters, initOverrides) return await response.value() } /** * Delete Modifier Group * Delete Modifier Group */ async modifierGroupsDeleteRaw( requestParameters: PosApiModifierGroupsDeleteRequest, initOverrides?: RequestInit ): Promise<runtime.ApiResponse<DeleteModifierGroupResponse>> { if (requestParameters.id === null || requestParameters.id === undefined) { throw new runtime.RequiredError( 'id', 'Required parameter requestParameters.id was null or undefined when calling modifierGroupsDelete.' ) } const queryParameters: any = {} if (requestParameters.raw !== undefined) { queryParameters['raw'] = requestParameters.raw } const headerParameters: runtime.HTTPHeaders = {} if (requestParameters.consumerId !== undefined && requestParameters.consumerId !== null) { headerParameters['x-apideck-consumer-id'] = String(requestParameters.consumerId) } if (requestParameters.appId !== undefined && requestParameters.appId !== null) { headerParameters['x-apideck-app-id'] = String(requestParameters.appId) } if (requestParameters.serviceId !== undefined && requestParameters.serviceId !== null) { headerParameters['x-apideck-service-id'] = String(requestParameters.serviceId) } if (this.configuration && this.configuration.apiKey) { headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication } const response = await t