export type GetApiVatValidationV1CalculateArgs = {amount: string, country_code: string}; export type GetApiVatValidationV1CalculateOptions = {baseUrl?: string | undefined, fetch?: typeof fetch | undefined}; /** * Calculate VAT amount for a given price and country. * * GET /vat-validation/v1/calculate */ export const getApiVatValidationV1Calculate = async (args: GetApiVatValidationV1CalculateArgs, options?: GetApiVatValidationV1CalculateOptions) => { const {baseUrl = "https://api.orthogonal.com/mpp", fetch: fetchFn = fetch} = options ?? {} const query = new URLSearchParams() const headers = new Headers() if (args.amount != null) query.append("amount", String(args.amount)) if (args.country_code != null) query.append("country_code", String(args.country_code)) const url = `${baseUrl.replace(/\/+$/, '')}/vat-validation/v1/calculate${query.size > 0 ? `?${query}` : ''}` const res = await fetchFn(url, {method: "GET", headers}) if (!res.ok) throw new Error(`Request failed with status ${res.status}`, {cause: {status: res.status, body: await res.text()}}) return undefined };