import type { ApiClient } from "@promobase/sdk-runtime"; import { Cursor } from "@promobase/sdk-runtime"; import { metaPagination } from "../../pagination.ts"; import type { AdsDatasetFields } from "./ads-dataset.ts"; import type { BusinessFields } from "./business.ts"; import type { PageFields } from "./page.ts"; export interface OffsiteSignalContainerBusinessObjectFields { business: BusinessFields; id: string; is_eligible_for_sharing_to_ad_account: boolean; is_eligible_for_sharing_to_business: boolean; is_unavailable: boolean; name: string; primary_container_id: string; } export function offsiteSignalContainerBusinessObjectNode(client: ApiClient, id: string) { return { __path: id, __brand: undefined as unknown as OffsiteSignalContainerBusinessObjectFields, get: (opts: { fields: F; params?: Record }) => client.get>(`${id}`, opts), linkedApplication: (opts: { fields: F; params?: Record }) => new Cursor>(client, `${id}/linked_application`, opts as { fields: readonly string[]; params?: Record }, metaPagination()), linkedPage: (opts: { fields: F; params?: Record }) => new Cursor>(client, `${id}/linked_page`, opts as { fields: readonly string[]; params?: Record }, metaPagination()), }; }