import type { ApiClient } from "@promobase/sdk-runtime"; import { Cursor } from "@promobase/sdk-runtime"; import { metaPagination } from "../../pagination.ts"; import type { ProductImageFields } from "./product-image.ts"; export interface CPASLsbImageBankFields { ad_group_id: string; catalog_segment_proxy_id: string; id: string; } export interface CPASLsbImageBankUpdateParams { backup_image_urls?: string[]; [key: string]: unknown; } export function cPASLsbImageBankNode(client: ApiClient, id: string) { return { __path: id, __brand: undefined as unknown as CPASLsbImageBankFields, get: (opts: { fields: F; params?: Record }) => client.get>(`${id}`, opts), update: (params: CPASLsbImageBankUpdateParams) => client.post(`${id}`, params as Record), backupImages: (opts: { fields: F; params?: Record }) => new Cursor>(client, `${id}/backup_images`, opts as { fields: readonly string[]; params?: Record }, metaPagination()), }; }