{"version":3,"file":"checkout.mjs","sources":["../../../../../../../rest/admin/2024-10/checkout.ts"],"sourcesContent":["/***********************************************************************************************************************\n* This file is auto-generated. If you have an issue, please create a GitHub issue.                                     *\n***********************************************************************************************************************/\n\nimport {Base} from '../../base';\nimport {ResourcePath, ResourceNames} from '../../types';\nimport {Session} from '../../../lib/session/session';\nimport {ApiVersion} from '../../../lib/types';\n\nimport {DiscountCode} from './discount_code';\nimport {Order} from './order';\nimport {GiftCard} from './gift_card';\n\ninterface FindArgs {\n  session: Session;\n  token: number | string;\n}\ninterface ShippingRatesArgs {\n  [key: string]: unknown;\n  session: Session;\n  token: number | string;\n}\ninterface CompleteArgs {\n  [key: string]: unknown;\n  body?: {[key: string]: unknown} | null;\n}\n\nexport class Checkout extends Base {\n  public static apiVersion = ApiVersion.October24;\n\n  protected static hasOne: {[key: string]: typeof Base} = {\n    \"discount_code\": DiscountCode,\n    \"order\": Order\n  };\n  protected static hasMany: {[key: string]: typeof Base} = {\n    \"gift_cards\": GiftCard\n  };\n  protected static paths: ResourcePath[] = [\n    {\"http_method\": \"get\", \"operation\": \"get\", \"ids\": [\"token\"], \"path\": \"checkouts/<token>.json\"},\n    {\"http_method\": \"get\", \"operation\": \"shipping_rates\", \"ids\": [\"token\"], \"path\": \"checkouts/<token>/shipping_rates.json\"},\n    {\"http_method\": \"post\", \"operation\": \"complete\", \"ids\": [\"token\"], \"path\": \"checkouts/<token>/complete.json\"},\n    {\"http_method\": \"post\", \"operation\": \"post\", \"ids\": [], \"path\": \"checkouts.json\"},\n    {\"http_method\": \"put\", \"operation\": \"put\", \"ids\": [\"token\"], \"path\": \"checkouts/<token>.json\"}\n  ];\n  protected static primaryKey: string = \"token\";\n  protected static resourceNames: ResourceNames[] = [\n    {\n      \"singular\": \"checkout\",\n      \"plural\": \"checkouts\"\n    }\n  ];\n\n  public static async find(\n    {\n      session,\n      token\n    }: FindArgs\n  ): Promise<Checkout | null> {\n    const result = await this.baseFind<Checkout>({\n      session: session,\n      requireIds: true,\n      urlIds: {\"token\": token},\n      params: {},\n    });\n    return result.data ? result.data[0] : null;\n  }\n\n  public static async shipping_rates(\n    {\n      session,\n      token,\n      ...otherArgs\n    }: ShippingRatesArgs\n  ): Promise<unknown> {\n    const response = await this.request<Checkout>({\n      http_method: \"get\",\n      operation: \"shipping_rates\",\n      session: session,\n      urlIds: {\"token\": token},\n      params: {...otherArgs},\n      body: {},\n      entity: null,\n    });\n\n    return response ? response.body : null;\n  }\n\n  public async complete(\n    {\n      body = null,\n      ...otherArgs\n    }: CompleteArgs\n  ): Promise<unknown> {\n    const response = await this.request<Checkout>({\n      http_method: \"post\",\n      operation: \"complete\",\n      session: this.session,\n      urlIds: {\"token\": this.token},\n      params: {...otherArgs},\n      body: body,\n      entity: this,\n    });\n\n    return response ? response.body : null;\n  }\n\n  public billing_address: {[key: string]: unknown} | null;\n  public line_items: {[key: string]: unknown}[] | null;\n  public applied_discount: {[key: string]: unknown} | null;\n  public buyer_accepts_marketing: boolean | null;\n  public created_at: string | null;\n  public currency: string | null;\n  public customer_id: string | null;\n  public discount_code: DiscountCode | null | {[key: string]: any};\n  public email: string | null;\n  public gift_cards: GiftCard[] | null | {[key: string]: any};\n  public order: Order | null | {[key: string]: any};\n  public payment_due: string | null;\n  public payment_url: string | null;\n  public phone: string | null;\n  public presentment_currency: string | null;\n  public requires_shipping: boolean | null;\n  public reservation_time: string | null;\n  public reservation_time_left: number | null;\n  public shipping_address: {[key: string]: unknown} | null;\n  public shipping_line: {[key: string]: unknown} | null;\n  public shipping_rate: {[key: string]: unknown} | null;\n  public source_identifier: string | null;\n  public source_name: string | null;\n  public source_url: string | null;\n  public subtotal_price: string | null;\n  public tax_lines: {[key: string]: unknown}[] | null;\n  public taxes_included: boolean | null;\n  public token: string | null;\n  public total_price: string | null;\n  public total_tax: string | null;\n  public updated_at: string | null;\n  public user_id: string | null;\n  public web_url: string | null;\n}\n"],"names":[],"mappings":"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"}