@coloop-ai/openai-ads-sdk 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +177 -0
- package/dist/index.cjs +1000 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.cts +258 -0
- package/dist/index.d.cts.map +1 -0
- package/dist/index.d.mts +258 -0
- package/dist/index.d.mts.map +1 -0
- package/dist/index.mjs +996 -0
- package/dist/index.mjs.map +1 -0
- package/dist/raw.cjs +160 -0
- package/dist/raw.cjs.map +1 -0
- package/dist/raw.d.cts +723 -0
- package/dist/raw.d.cts.map +1 -0
- package/dist/raw.d.mts +723 -0
- package/dist/raw.d.mts.map +1 -0
- package/dist/raw.mjs +65 -0
- package/dist/raw.mjs.map +1 -0
- package/dist/sdk.gen-BZw2JSrr.mjs +1392 -0
- package/dist/sdk.gen-BZw2JSrr.mjs.map +1 -0
- package/dist/sdk.gen-DZPUCME9.cjs +1955 -0
- package/dist/sdk.gen-DZPUCME9.cjs.map +1 -0
- package/dist/types.gen-C0tFuU7P.d.cts +3181 -0
- package/dist/types.gen-C0tFuU7P.d.cts.map +1 -0
- package/dist/types.gen-C0tFuU7P.d.mts +3181 -0
- package/dist/types.gen-C0tFuU7P.d.mts.map +1 -0
- package/package.json +88 -0
- package/schemas/advertiser-rest.openapi.json +7359 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","names":["raw\n .listCampaignsMethod","raw\n .createCampaignMethod","raw\n .getCampaignMethod","raw\n .updateCampaignMethod","raw\n .activateCampaignMethod","raw\n .pauseCampaignMethod","raw\n .archiveCampaignMethod","raw\n .listCustomAudiencesMethod","raw\n .createCustomAudienceMethod","raw\n .getCustomAudienceMethod","raw\n .archiveCustomAudienceMethod","raw\n .addCustomAudienceMembersMethod","raw\n .removeCustomAudienceMembersMethod","raw\n .replaceCustomAudienceMembersMethod","raw\n .mergeCustomAudiencesMethod","raw\n .getCustomAudienceOperationMethod","raw\n .listBusinessAgentToolsMethod","raw\n .listBusinessAgentsMethod","raw\n .createBusinessAgentMethod","raw\n .getBusinessAgentMethod","raw\n .updateBusinessAgentMethod","raw\n .previewBusinessAgentMethod","raw\n .publishBusinessAgentMethod","raw\n .listLeadFormsMethod","raw\n .createLeadFormMethod","raw\n .getLeadFormMethod","raw\n .updateLeadFormMethod","raw\n .publishLeadFormMethod","raw\n .archiveLeadFormMethod","raw\n .createTestLeadSubmissionMethod","raw\n .createApiKeyMethod","raw\n .updateAdAccountMethod","raw\n .updateAdAccountNegativeKeywordsMethod","raw\n .activateAdAccountMethod","raw\n .pauseAdAccountMethod","raw\n .getAdAccountMethod","raw\n .getAdAccountSpendLimitWindowsMethod","raw\n .createAdAccountSpendLimitWindowMethod","raw\n .updateAdAccountSpendLimitWindowMethod","raw\n .deleteAdAccountSpendLimitWindowMethod","raw\n .listAdAccountsMethod","raw\n .createAdAccountCreationSessionMethod","raw\n .getAdsOAuthMeMethod","raw\n .getAdAccountInsightsMethod","raw\n .getCampaignInsightsMethod","raw\n .getAdGroupInsightsMethod","raw\n .getAdInsightsMethod","raw\n .getGeoLookupMethod","raw\n .createLeadSyncSubscriptionMethod","raw\n .listLeadSyncSubscriptionsMethod","raw\n .getLeadSyncSubscriptionMethod","raw\n .deleteLeadSyncSubscriptionMethod","raw\n .createConversionApiKeyMethod","raw\n .createConversionEventSettingMethod","raw\n .listConversionEventSettingsMethod","raw\n .createConversionSourceMethod","raw\n .listConversionSourcesMethod","raw\n .listConversionEventsMethod","raw\n .postConversionInsightsMethod","raw\n .listAdGroupsMethod","raw\n .createAdGroupMethod","raw\n .getAdGroupMethod","raw\n .updateAdGroupMethod","raw\n .activateAdGroupMethod","raw\n .pauseAdGroupMethod","raw\n .archiveAdGroupMethod","raw\n .listAdsMethod","raw\n .createAdMethod","raw\n .getAdMethod","raw\n .updateAdMethod","raw\n .createAdPreviewMethod","raw\n .activateAdMethod","raw\n .pauseAdMethod","raw\n .archiveAdMethod","raw\n .uploadBlobMethod","raw\n .uploadImageMethod","raw\n .archiveProductFeedMethod","raw\n .createProductFeedMethod","raw\n .listProductFeedsMethod","raw\n .listProductFeedUploadsMethod","raw\n .queryProductFeedProductsMethod","raw\n .patchProductFeedProductsMethod","raw\n .getProductFeedSftpAccessMethod","raw\n .postProductFeedSftpAccessMethod","raw\n .postProductFeedSftpAccessActivateMethod","raw\n .postProductFeedSftpAccessPauseMethod","raw\n .createPartnerDataUploadMethod","raw\n .getPartnerDataUploadMethod"],"sources":["../src/errors.ts","../src/rest-operations.ts","../src/openai-ads.ts"],"sourcesContent":["export type OpenAIAdsRequestSummary = {\n method: string\n url: string\n}\n\nexport type OpenAIAdsApiErrorOptions = {\n code?: string\n message: string\n param?: string | null\n payload: unknown\n request: OpenAIAdsRequestSummary\n response: Response\n status: number\n statusText: string\n type?: string\n}\n\nexport class OpenAIAdsApiError extends Error {\n readonly code?: string\n readonly param?: string | null\n readonly payload: unknown\n readonly request: OpenAIAdsRequestSummary\n readonly response: Response\n readonly status: number\n readonly statusText: string\n readonly type?: string\n\n constructor(options: OpenAIAdsApiErrorOptions) {\n super(options.message)\n this.name = 'OpenAIAdsApiError'\n this.code = options.code\n this.param = options.param\n this.payload = options.payload\n this.request = options.request\n this.response = options.response\n this.status = options.status\n this.statusText = options.statusText\n this.type = options.type\n }\n}\n\nexport class OpenAIAdsTimeoutError extends Error {\n readonly request: OpenAIAdsRequestSummary\n readonly timeoutMs: number\n\n constructor(timeoutMs: number, request: OpenAIAdsRequestSummary) {\n super(`OpenAI Ads API request timed out after ${String(timeoutMs)} ms`)\n this.name = 'OpenAIAdsTimeoutError'\n this.request = request\n this.timeoutMs = timeoutMs\n }\n}\n\nexport class OpenAIAdsConfigurationError extends Error {\n constructor(message: string) {\n super(message)\n this.name = 'OpenAIAdsConfigurationError'\n }\n}\n","export type OpenAIAdsAuthRequirement = 'accessToken' | 'apiKey' | 'either'\nexport type OpenAIAdsIdempotency = 'none' | 'optional' | 'required'\n\nexport type OpenAIAdsRestOperation = {\n accountHeader: boolean\n auth: OpenAIAdsAuthRequirement\n idempotency: OpenAIAdsIdempotency\n method: 'DELETE' | 'GET' | 'PATCH' | 'POST'\n operationId: string\n path: string\n}\n\nexport const REST_OPERATIONS = {\n 'campaigns.list': rest('ListCampaignsMethod', 'GET', '/campaigns'),\n 'campaigns.create': rest('CreateCampaignMethod', 'POST', '/campaigns', {\n idempotency: 'optional',\n }),\n 'campaigns.get': rest('GetCampaignMethod', 'GET', '/campaigns/{campaign_id}'),\n 'campaigns.update': rest(\n 'UpdateCampaignMethod',\n 'POST',\n '/campaigns/{campaign_id}',\n ),\n 'campaigns.activate': rest(\n 'ActivateCampaignMethod',\n 'POST',\n '/campaigns/{campaign_id}/activate',\n ),\n 'campaigns.pause': rest(\n 'PauseCampaignMethod',\n 'POST',\n '/campaigns/{campaign_id}/pause',\n ),\n 'campaigns.archive': rest(\n 'ArchiveCampaignMethod',\n 'POST',\n '/campaigns/{campaign_id}/archive',\n ),\n 'customAudiences.list': rest(\n 'ListCustomAudiencesMethod',\n 'GET',\n '/custom_audiences',\n ),\n 'customAudiences.create': rest(\n 'CreateCustomAudienceMethod',\n 'POST',\n '/custom_audiences',\n ),\n 'customAudiences.get': rest(\n 'GetCustomAudienceMethod',\n 'GET',\n '/custom_audiences/{custom_audience_id}',\n ),\n 'customAudiences.archive': rest(\n 'ArchiveCustomAudienceMethod',\n 'POST',\n '/custom_audiences/{custom_audience_id}/archive',\n ),\n 'customAudiences.addMembers': rest(\n 'AddCustomAudienceMembersMethod',\n 'POST',\n '/custom_audiences/{custom_audience_id}/add',\n { idempotency: 'required' },\n ),\n 'customAudiences.removeMembers': rest(\n 'RemoveCustomAudienceMembersMethod',\n 'POST',\n '/custom_audiences/{custom_audience_id}/remove',\n { idempotency: 'required' },\n ),\n 'customAudiences.replaceMembers': rest(\n 'ReplaceCustomAudienceMembersMethod',\n 'POST',\n '/custom_audiences/{custom_audience_id}/replace',\n { idempotency: 'required' },\n ),\n 'customAudiences.merge': rest(\n 'MergeCustomAudiencesMethod',\n 'POST',\n '/custom_audiences/merge',\n { idempotency: 'required' },\n ),\n 'customAudiences.operations.get': rest(\n 'GetCustomAudienceOperationMethod',\n 'GET',\n '/custom_audiences/{custom_audience_id}/operations/{operation_id}',\n ),\n 'businessAgentTools.list': rest(\n 'ListBusinessAgentToolsMethod',\n 'GET',\n '/business_agent_tools',\n { accountHeader: false, auth: 'apiKey' },\n ),\n 'businessAgents.list': rest(\n 'ListBusinessAgentsMethod',\n 'GET',\n '/business_agents',\n ),\n 'businessAgents.create': rest(\n 'CreateBusinessAgentMethod',\n 'POST',\n '/business_agents',\n ),\n 'leadForms.list': rest('ListLeadFormsMethod', 'GET', '/lead_forms'),\n 'leadForms.create': rest('CreateLeadFormMethod', 'POST', '/lead_forms'),\n 'leadForms.get': rest(\n 'GetLeadFormMethod',\n 'GET',\n '/lead_forms/{lead_form_id}',\n ),\n 'leadForms.update': rest(\n 'UpdateLeadFormMethod',\n 'POST',\n '/lead_forms/{lead_form_id}',\n ),\n 'leadForms.publish': rest(\n 'PublishLeadFormMethod',\n 'POST',\n '/lead_forms/{lead_form_id}/publish',\n ),\n 'leadForms.archive': rest(\n 'ArchiveLeadFormMethod',\n 'POST',\n '/lead_forms/{lead_form_id}/archive',\n ),\n 'leadForms.testSubmissions.create': rest(\n 'CreateTestLeadSubmissionMethod',\n 'POST',\n '/lead_forms/{lead_form_id}/test_submissions',\n { idempotency: 'required' },\n ),\n 'businessAgents.get': rest(\n 'GetBusinessAgentMethod',\n 'GET',\n '/business_agents/{business_agent_id}',\n ),\n 'businessAgents.update': rest(\n 'UpdateBusinessAgentMethod',\n 'POST',\n '/business_agents/{business_agent_id}',\n ),\n 'businessAgents.preview': rest(\n 'PreviewBusinessAgentMethod',\n 'POST',\n '/business_agents/{business_agent_id}/preview',\n ),\n 'businessAgents.publish': rest(\n 'PublishBusinessAgentMethod',\n 'POST',\n '/business_agents/{business_agent_id}/publish',\n ),\n 'apiKeys.create': rest('CreateApiKeyMethod', 'POST', '/api_keys', {\n accountHeader: false,\n auth: 'apiKey',\n }),\n 'adAccount.updateBrand': rest(\n 'UpdateAdAccountMethod',\n 'POST',\n '/ad_account/brand',\n ),\n 'adAccount.updateNegativeKeywords': rest(\n 'UpdateAdAccountNegativeKeywordsMethod',\n 'POST',\n '/ad_account/negative_keywords',\n ),\n 'adAccount.activate': rest(\n 'ActivateAdAccountMethod',\n 'POST',\n '/ad_account/activate',\n ),\n 'adAccount.pause': rest('PauseAdAccountMethod', 'POST', '/ad_account/pause'),\n 'adAccounts.list': rest('ListAdAccountsMethod', 'GET', '/ad_accounts', {\n accountHeader: false,\n }),\n 'adAccountCreationSessions.create': rest(\n 'CreateAdAccountCreationSessionMethod',\n 'POST',\n '/ad_account_creation_sessions',\n {\n accountHeader: false,\n auth: 'accessToken',\n idempotency: 'required',\n },\n ),\n 'oauth.getMe': rest('GetAdsOAuthMeMethod', 'GET', '/me', {\n accountHeader: false,\n auth: 'accessToken',\n }),\n 'adAccount.get': rest('GetAdAccountMethod', 'GET', '/ad_account'),\n 'adAccount.spendLimitWindows.list': rest(\n 'GetAdAccountSpendLimitWindowsMethod',\n 'GET',\n '/ad_account/spend_limit_windows',\n ),\n 'adAccount.spendLimitWindows.create': rest(\n 'CreateAdAccountSpendLimitWindowMethod',\n 'POST',\n '/ad_account/spend_limit_windows',\n ),\n 'adAccount.spendLimitWindows.update': rest(\n 'UpdateAdAccountSpendLimitWindowMethod',\n 'POST',\n '/ad_account/spend_limit_windows/{window_id}',\n ),\n 'adAccount.spendLimitWindows.delete': rest(\n 'DeleteAdAccountSpendLimitWindowMethod',\n 'POST',\n '/ad_account/spend_limit_windows/{window_id}/delete',\n ),\n 'insights.adAccount': rest(\n 'GetAdAccountInsightsMethod',\n 'GET',\n '/ad_account/insights',\n ),\n 'insights.campaign': rest(\n 'GetCampaignInsightsMethod',\n 'GET',\n '/campaigns/{campaign_id}/insights',\n ),\n 'insights.adGroup': rest(\n 'GetAdGroupInsightsMethod',\n 'GET',\n '/ad_groups/{ad_group_id}/insights',\n ),\n 'insights.ad': rest('GetAdInsightsMethod', 'GET', '/ads/{ad_id}/insights'),\n 'geo.search': rest('GetGeoLookupMethod', 'GET', '/geo_lookup/search'),\n 'leadSync.subscriptions.create': rest(\n 'CreateLeadSyncSubscriptionMethod',\n 'POST',\n '/lead_sync_subscriptions',\n { idempotency: 'required' },\n ),\n 'leadSync.subscriptions.list': rest(\n 'ListLeadSyncSubscriptionsMethod',\n 'GET',\n '/lead_sync_subscriptions',\n ),\n 'leadSync.subscriptions.get': rest(\n 'GetLeadSyncSubscriptionMethod',\n 'GET',\n '/lead_sync_subscriptions/{subscription_id}',\n ),\n 'leadSync.subscriptions.delete': rest(\n 'DeleteLeadSyncSubscriptionMethod',\n 'DELETE',\n '/lead_sync_subscriptions/{subscription_id}',\n ),\n 'conversions.apiKeys.create': rest(\n 'CreateConversionApiKeyMethod',\n 'POST',\n '/conversions/api_keys',\n { accountHeader: false, auth: 'apiKey' },\n ),\n 'conversions.eventSettings.create': rest(\n 'CreateConversionEventSettingMethod',\n 'POST',\n '/conversions/event_settings',\n ),\n 'conversions.eventSettings.list': rest(\n 'ListConversionEventSettingsMethod',\n 'GET',\n '/conversions/event_settings',\n ),\n 'conversions.pixels.create': rest(\n 'CreateConversionSourceMethod',\n 'POST',\n '/conversions/pixels',\n ),\n 'conversions.pixels.list': rest(\n 'ListConversionSourcesMethod',\n 'GET',\n '/conversions/pixels',\n ),\n 'conversions.events.list': rest(\n 'ListConversionEventsMethod',\n 'GET',\n '/conversions/events',\n { accountHeader: false, auth: 'apiKey' },\n ),\n 'conversions.insights.query': rest(\n 'PostConversionInsightsMethod',\n 'POST',\n '/conversions/insights',\n ),\n 'adGroups.list': rest('ListAdGroupsMethod', 'GET', '/ad_groups'),\n 'adGroups.create': rest('CreateAdGroupMethod', 'POST', '/ad_groups', {\n idempotency: 'optional',\n }),\n 'adGroups.get': rest('GetAdGroupMethod', 'GET', '/ad_groups/{ad_group_id}'),\n 'adGroups.update': rest(\n 'UpdateAdGroupMethod',\n 'POST',\n '/ad_groups/{ad_group_id}',\n ),\n 'adGroups.activate': rest(\n 'ActivateAdGroupMethod',\n 'POST',\n '/ad_groups/{ad_group_id}/activate',\n ),\n 'adGroups.pause': rest(\n 'PauseAdGroupMethod',\n 'POST',\n '/ad_groups/{ad_group_id}/pause',\n ),\n 'adGroups.archive': rest(\n 'ArchiveAdGroupMethod',\n 'POST',\n '/ad_groups/{ad_group_id}/archive',\n ),\n 'ads.list': rest('ListAdsMethod', 'GET', '/ads'),\n 'ads.create': rest('CreateAdMethod', 'POST', '/ads', {\n idempotency: 'optional',\n }),\n 'ads.get': rest('GetAdMethod', 'GET', '/ads/{ad_id}'),\n 'ads.update': rest('UpdateAdMethod', 'POST', '/ads/{ad_id}'),\n 'ads.preview': rest('CreateAdPreviewMethod', 'POST', '/ads/{ad_id}/preview'),\n 'ads.activate': rest('ActivateAdMethod', 'POST', '/ads/{ad_id}/activate'),\n 'ads.pause': rest('PauseAdMethod', 'POST', '/ads/{ad_id}/pause'),\n 'ads.archive': rest('ArchiveAdMethod', 'POST', '/ads/{ad_id}/archive'),\n 'files.uploadBlob': rest('UploadBlobMethod', 'POST', '/uploads'),\n 'files.uploadImage': rest('UploadImageMethod', 'POST', '/upload'),\n 'productFeeds.archive': rest(\n 'ArchiveProductFeedMethod',\n 'POST',\n '/feeds/{feed_id}/archive',\n ),\n 'productFeeds.create': rest('CreateProductFeedMethod', 'POST', '/feeds'),\n 'productFeeds.list': rest('ListProductFeedsMethod', 'GET', '/feeds'),\n 'productFeeds.uploads.list': rest(\n 'ListProductFeedUploadsMethod',\n 'GET',\n '/feeds/uploads',\n ),\n 'productFeeds.products.query': rest(\n 'QueryProductFeedProductsMethod',\n 'POST',\n '/feeds/{feed_id}/products/query',\n ),\n 'productFeeds.products.patch': rest(\n 'PatchProductFeedProductsMethod',\n 'PATCH',\n '/feeds/{feed_id}/products',\n ),\n 'productFeeds.sftpAccess.get': rest(\n 'GetProductFeedSftpAccessMethod',\n 'GET',\n '/feeds/{feed_id}/sftp_access',\n ),\n 'productFeeds.sftpAccess.createOrReplace': rest(\n 'PostProductFeedSftpAccessMethod',\n 'POST',\n '/feeds/{feed_id}/sftp_access',\n ),\n 'productFeeds.sftpAccess.activate': rest(\n 'PostProductFeedSftpAccessActivateMethod',\n 'POST',\n '/feeds/{feed_id}/sftp_access/activate',\n ),\n 'productFeeds.sftpAccess.pause': rest(\n 'PostProductFeedSftpAccessPauseMethod',\n 'POST',\n '/feeds/{feed_id}/sftp_access/pause',\n ),\n 'partnerData.uploads.create': rest(\n 'CreatePartnerDataUploadMethod',\n 'POST',\n '/partner_data/uploads',\n { accountHeader: false, auth: 'apiKey' },\n ),\n 'partnerData.uploads.get': rest(\n 'GetPartnerDataUploadMethod',\n 'GET',\n '/partner_data/uploads/{upload_id}',\n { accountHeader: false, auth: 'apiKey' },\n ),\n} as const satisfies Record<string, OpenAIAdsRestOperation>\n\nexport type OpenAIAdsRestOperationName = keyof typeof REST_OPERATIONS\n\nfunction rest(\n operationId: string,\n method: OpenAIAdsRestOperation['method'],\n path: string,\n overrides: Partial<\n Pick<OpenAIAdsRestOperation, 'accountHeader' | 'auth' | 'idempotency'>\n > = {},\n): OpenAIAdsRestOperation {\n return {\n accountHeader: overrides.accountHeader ?? true,\n auth: overrides.auth ?? 'either',\n idempotency: overrides.idempotency ?? 'none',\n method,\n operationId,\n path,\n }\n}\n","import * as raw from './generated'\nimport { createClient, formDataBodySerializer } from './generated/client'\nimport type { Client } from './generated/client'\nimport {\n OpenAIAdsApiError,\n OpenAIAdsConfigurationError,\n OpenAIAdsTimeoutError,\n} from './errors'\nimport { REST_OPERATIONS } from './rest-operations'\nimport type {\n OpenAIAdsAuthRequirement,\n OpenAIAdsRestOperation,\n} from './rest-operations'\nimport type {\n OpenAIAdsAccountRequestOptions,\n OpenAIAdsCredential,\n OpenAIAdsOptionalIdempotencyOptions,\n OpenAIAdsOptions,\n OpenAIAdsRequestOptions,\n OpenAIAdsRequiredIdempotencyOptions,\n UploadBlobInput,\n UploadImageInput,\n} from './types'\n\ntype Body<T extends { body?: unknown }> = NonNullable<T['body']>\ntype Query<T extends { query?: unknown }> = NonNullable<T['query']>\ntype PathValues = Record<string, string>\ntype AccountHeaders = { 'OpenAI-Ad-Account'?: string }\ntype OptionalIdempotencyHeaders = AccountHeaders & {\n 'Idempotency-Key'?: string\n}\ntype RequiredIdempotencyHeaders = AccountHeaders & {\n 'Idempotency-Key': string\n}\ntype CredentialMode = 'accessToken' | 'apiKey'\n\nconst DEFAULT_BASE_URL = 'https://api.ads.openai.com/v1'\n\nexport class OpenAIAds {\n readonly campaigns = {\n list: (\n query: Query<raw.ListCampaignsMethodData> = {},\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(REST_OPERATIONS['campaigns.list'], options, {}, (signal) =>\n raw\n .listCampaignsMethod({\n client: this.client,\n headers: this.accountHeaders(options),\n query,\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n create: (\n body: Body<raw.CreateCampaignMethodData>,\n options: OpenAIAdsOptionalIdempotencyOptions = {},\n ) =>\n this.run(REST_OPERATIONS['campaigns.create'], options, {}, (signal) =>\n raw\n .createCampaignMethod({\n body,\n client: this.client,\n headers: this.optionalIdempotencyHeaders(options),\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n get: (\n campaignId: string,\n query: Query<raw.GetCampaignMethodData> = {},\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(\n REST_OPERATIONS['campaigns.get'],\n options,\n { campaign_id: campaignId },\n (signal) =>\n raw\n .getCampaignMethod({\n client: this.client,\n headers: this.accountHeaders(options),\n path: { campaign_id: campaignId },\n query,\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n update: (\n campaignId: string,\n body: Body<raw.UpdateCampaignMethodData>,\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(\n REST_OPERATIONS['campaigns.update'],\n options,\n { campaign_id: campaignId },\n (signal) =>\n raw\n .updateCampaignMethod({\n body,\n client: this.client,\n headers: this.accountHeaders(options),\n path: { campaign_id: campaignId },\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n activate: (\n campaignId: string,\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(\n REST_OPERATIONS['campaigns.activate'],\n options,\n { campaign_id: campaignId },\n (signal) =>\n raw\n .activateCampaignMethod({\n client: this.client,\n headers: this.accountHeaders(options),\n path: { campaign_id: campaignId },\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n pause: (campaignId: string, options: OpenAIAdsAccountRequestOptions = {}) =>\n this.run(\n REST_OPERATIONS['campaigns.pause'],\n options,\n { campaign_id: campaignId },\n (signal) =>\n raw\n .pauseCampaignMethod({\n client: this.client,\n headers: this.accountHeaders(options),\n path: { campaign_id: campaignId },\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n archive: (\n campaignId: string,\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(\n REST_OPERATIONS['campaigns.archive'],\n options,\n { campaign_id: campaignId },\n (signal) =>\n raw\n .archiveCampaignMethod({\n client: this.client,\n headers: this.accountHeaders(options),\n path: { campaign_id: campaignId },\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n }\n\n readonly customAudiences = {\n list: (\n query: Query<raw.ListCustomAudiencesMethodData> = {},\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(REST_OPERATIONS['customAudiences.list'], options, {}, (signal) =>\n raw\n .listCustomAudiencesMethod({\n client: this.client,\n headers: this.accountHeaders(options),\n query,\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n create: (\n body: Body<raw.CreateCustomAudienceMethodData>,\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(\n REST_OPERATIONS['customAudiences.create'],\n options,\n {},\n (signal) =>\n raw\n .createCustomAudienceMethod({\n body,\n client: this.client,\n headers: this.accountHeaders(options),\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n get: (\n customAudienceId: string,\n query: Query<raw.GetCustomAudienceMethodData> = {},\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(\n REST_OPERATIONS['customAudiences.get'],\n options,\n { custom_audience_id: customAudienceId },\n (signal) =>\n raw\n .getCustomAudienceMethod({\n client: this.client,\n headers: this.accountHeaders(options),\n path: { custom_audience_id: customAudienceId },\n query,\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n archive: (\n customAudienceId: string,\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(\n REST_OPERATIONS['customAudiences.archive'],\n options,\n { custom_audience_id: customAudienceId },\n (signal) =>\n raw\n .archiveCustomAudienceMethod({\n client: this.client,\n headers: this.accountHeaders(options),\n path: { custom_audience_id: customAudienceId },\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n addMembers: (\n customAudienceId: string,\n body: Body<raw.AddCustomAudienceMembersMethodData>,\n options: OpenAIAdsRequiredIdempotencyOptions,\n ) =>\n this.run(\n REST_OPERATIONS['customAudiences.addMembers'],\n options,\n { custom_audience_id: customAudienceId },\n (signal) =>\n raw\n .addCustomAudienceMembersMethod({\n body,\n client: this.client,\n headers: this.requiredIdempotencyHeaders(options),\n path: { custom_audience_id: customAudienceId },\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n removeMembers: (\n customAudienceId: string,\n body: Body<raw.RemoveCustomAudienceMembersMethodData>,\n options: OpenAIAdsRequiredIdempotencyOptions,\n ) =>\n this.run(\n REST_OPERATIONS['customAudiences.removeMembers'],\n options,\n { custom_audience_id: customAudienceId },\n (signal) =>\n raw\n .removeCustomAudienceMembersMethod({\n body,\n client: this.client,\n headers: this.requiredIdempotencyHeaders(options),\n path: { custom_audience_id: customAudienceId },\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n replaceMembers: (\n customAudienceId: string,\n body: Body<raw.ReplaceCustomAudienceMembersMethodData>,\n options: OpenAIAdsRequiredIdempotencyOptions,\n ) =>\n this.run(\n REST_OPERATIONS['customAudiences.replaceMembers'],\n options,\n { custom_audience_id: customAudienceId },\n (signal) =>\n raw\n .replaceCustomAudienceMembersMethod({\n body,\n client: this.client,\n headers: this.requiredIdempotencyHeaders(options),\n path: { custom_audience_id: customAudienceId },\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n merge: (\n body: Body<raw.MergeCustomAudiencesMethodData>,\n options: OpenAIAdsRequiredIdempotencyOptions,\n ) =>\n this.run(\n REST_OPERATIONS['customAudiences.merge'],\n options,\n {},\n (signal) =>\n raw\n .mergeCustomAudiencesMethod({\n body,\n client: this.client,\n headers: this.requiredIdempotencyHeaders(options),\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n operations: {\n get: (\n customAudienceId: string,\n operationId: string,\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(\n REST_OPERATIONS['customAudiences.operations.get'],\n options,\n {\n custom_audience_id: customAudienceId,\n operation_id: operationId,\n },\n (signal) =>\n raw\n .getCustomAudienceOperationMethod({\n client: this.client,\n headers: this.accountHeaders(options),\n path: {\n custom_audience_id: customAudienceId,\n operation_id: operationId,\n },\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n },\n }\n\n readonly businessAgentTools = {\n list: (options: OpenAIAdsRequestOptions = {}) =>\n this.run(\n REST_OPERATIONS['businessAgentTools.list'],\n options,\n {},\n (signal) =>\n raw\n .listBusinessAgentToolsMethod({\n client: this.client,\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n }\n\n readonly businessAgents = {\n list: (options: OpenAIAdsAccountRequestOptions = {}) =>\n this.run(REST_OPERATIONS['businessAgents.list'], options, {}, (signal) =>\n raw\n .listBusinessAgentsMethod({\n client: this.client,\n headers: this.accountHeaders(options),\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n create: (\n body: Body<raw.CreateBusinessAgentMethodData>,\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(\n REST_OPERATIONS['businessAgents.create'],\n options,\n {},\n (signal) =>\n raw\n .createBusinessAgentMethod({\n body,\n client: this.client,\n headers: this.accountHeaders(options),\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n get: (\n businessAgentId: string,\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(\n REST_OPERATIONS['businessAgents.get'],\n options,\n { business_agent_id: businessAgentId },\n (signal) =>\n raw\n .getBusinessAgentMethod({\n client: this.client,\n headers: this.accountHeaders(options),\n path: { business_agent_id: businessAgentId },\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n update: (\n businessAgentId: string,\n body: Body<raw.UpdateBusinessAgentMethodData>,\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(\n REST_OPERATIONS['businessAgents.update'],\n options,\n { business_agent_id: businessAgentId },\n (signal) =>\n raw\n .updateBusinessAgentMethod({\n body,\n client: this.client,\n headers: this.accountHeaders(options),\n path: { business_agent_id: businessAgentId },\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n preview: (\n businessAgentId: string,\n body: Body<raw.PreviewBusinessAgentMethodData>,\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(\n REST_OPERATIONS['businessAgents.preview'],\n options,\n { business_agent_id: businessAgentId },\n (signal) =>\n raw\n .previewBusinessAgentMethod({\n body,\n client: this.client,\n headers: this.accountHeaders(options),\n path: { business_agent_id: businessAgentId },\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n publish: (\n businessAgentId: string,\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(\n REST_OPERATIONS['businessAgents.publish'],\n options,\n { business_agent_id: businessAgentId },\n (signal) =>\n raw\n .publishBusinessAgentMethod({\n client: this.client,\n headers: this.accountHeaders(options),\n path: { business_agent_id: businessAgentId },\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n }\n\n readonly leadForms = {\n list: (options: OpenAIAdsAccountRequestOptions = {}) =>\n this.run(REST_OPERATIONS['leadForms.list'], options, {}, (signal) =>\n raw\n .listLeadFormsMethod({\n client: this.client,\n headers: this.accountHeaders(options),\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n create: (\n body: Body<raw.CreateLeadFormMethodData>,\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(REST_OPERATIONS['leadForms.create'], options, {}, (signal) =>\n raw\n .createLeadFormMethod({\n body,\n client: this.client,\n headers: this.accountHeaders(options),\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n get: (\n leadFormId: string,\n query: Query<raw.GetLeadFormMethodData> = {},\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(\n REST_OPERATIONS['leadForms.get'],\n options,\n { lead_form_id: leadFormId },\n (signal) =>\n raw\n .getLeadFormMethod({\n client: this.client,\n headers: this.accountHeaders(options),\n path: { lead_form_id: leadFormId },\n query,\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n update: (\n leadFormId: string,\n body: Body<raw.UpdateLeadFormMethodData>,\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(\n REST_OPERATIONS['leadForms.update'],\n options,\n { lead_form_id: leadFormId },\n (signal) =>\n raw\n .updateLeadFormMethod({\n body,\n client: this.client,\n headers: this.accountHeaders(options),\n path: { lead_form_id: leadFormId },\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n publish: (\n leadFormId: string,\n body: Body<raw.PublishLeadFormMethodData>,\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(\n REST_OPERATIONS['leadForms.publish'],\n options,\n { lead_form_id: leadFormId },\n (signal) =>\n raw\n .publishLeadFormMethod({\n body,\n client: this.client,\n headers: this.accountHeaders(options),\n path: { lead_form_id: leadFormId },\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n archive: (\n leadFormId: string,\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(\n REST_OPERATIONS['leadForms.archive'],\n options,\n { lead_form_id: leadFormId },\n (signal) =>\n raw\n .archiveLeadFormMethod({\n client: this.client,\n headers: this.accountHeaders(options),\n path: { lead_form_id: leadFormId },\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n testSubmissions: {\n create: (\n leadFormId: string,\n body: Body<raw.CreateTestLeadSubmissionMethodData>,\n options: OpenAIAdsRequiredIdempotencyOptions,\n ) =>\n this.run(\n REST_OPERATIONS['leadForms.testSubmissions.create'],\n options,\n { lead_form_id: leadFormId },\n (signal) =>\n raw\n .createTestLeadSubmissionMethod({\n body,\n client: this.client,\n headers: this.requiredIdempotencyHeaders(options),\n path: { lead_form_id: leadFormId },\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n },\n }\n\n readonly apiKeys = {\n create: (\n body: Body<raw.CreateApiKeyMethodData>,\n options: OpenAIAdsRequestOptions = {},\n ) =>\n this.run(REST_OPERATIONS['apiKeys.create'], options, {}, (signal) =>\n raw\n .createApiKeyMethod({\n body,\n client: this.client,\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n }\n\n readonly adAccount = {\n updateBrand: (\n body: Body<raw.UpdateAdAccountMethodData>,\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(\n REST_OPERATIONS['adAccount.updateBrand'],\n options,\n {},\n (signal) =>\n raw\n .updateAdAccountMethod({\n body,\n client: this.client,\n headers: this.accountHeaders(options),\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n updateNegativeKeywords: (\n body: Body<raw.UpdateAdAccountNegativeKeywordsMethodData>,\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(\n REST_OPERATIONS['adAccount.updateNegativeKeywords'],\n options,\n {},\n (signal) =>\n raw\n .updateAdAccountNegativeKeywordsMethod({\n body,\n client: this.client,\n headers: this.accountHeaders(options),\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n activate: (options: OpenAIAdsAccountRequestOptions = {}) =>\n this.run(REST_OPERATIONS['adAccount.activate'], options, {}, (signal) =>\n raw\n .activateAdAccountMethod({\n client: this.client,\n headers: this.accountHeaders(options),\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n pause: (options: OpenAIAdsAccountRequestOptions = {}) =>\n this.run(REST_OPERATIONS['adAccount.pause'], options, {}, (signal) =>\n raw\n .pauseAdAccountMethod({\n client: this.client,\n headers: this.accountHeaders(options),\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n get: (options: OpenAIAdsAccountRequestOptions = {}) =>\n this.run(REST_OPERATIONS['adAccount.get'], options, {}, (signal) =>\n raw\n .getAdAccountMethod({\n client: this.client,\n headers: this.accountHeaders(options),\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n spendLimitWindows: {\n list: (options: OpenAIAdsAccountRequestOptions = {}) =>\n this.run(\n REST_OPERATIONS['adAccount.spendLimitWindows.list'],\n options,\n {},\n (signal) =>\n raw\n .getAdAccountSpendLimitWindowsMethod({\n client: this.client,\n headers: this.accountHeaders(options),\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n create: (\n body: Body<raw.CreateAdAccountSpendLimitWindowMethodData>,\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(\n REST_OPERATIONS['adAccount.spendLimitWindows.create'],\n options,\n {},\n (signal) =>\n raw\n .createAdAccountSpendLimitWindowMethod({\n body,\n client: this.client,\n headers: this.accountHeaders(options),\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n update: (\n windowId: string,\n body: Body<raw.UpdateAdAccountSpendLimitWindowMethodData>,\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(\n REST_OPERATIONS['adAccount.spendLimitWindows.update'],\n options,\n { window_id: windowId },\n (signal) =>\n raw\n .updateAdAccountSpendLimitWindowMethod({\n body,\n client: this.client,\n headers: this.accountHeaders(options),\n path: { window_id: windowId },\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n delete: (\n windowId: string,\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(\n REST_OPERATIONS['adAccount.spendLimitWindows.delete'],\n options,\n { window_id: windowId },\n (signal) =>\n raw\n .deleteAdAccountSpendLimitWindowMethod({\n client: this.client,\n headers: this.accountHeaders(options),\n path: { window_id: windowId },\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n },\n }\n\n readonly adAccounts = {\n list: (\n query: Query<raw.ListAdAccountsMethodData> = {},\n options: OpenAIAdsRequestOptions = {},\n ) =>\n this.run(REST_OPERATIONS['adAccounts.list'], options, {}, (signal) =>\n raw\n .listAdAccountsMethod({\n client: this.client,\n query,\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n }\n\n readonly adAccountCreationSessions = {\n create: (\n body: Body<raw.CreateAdAccountCreationSessionMethodData>,\n options: Omit<OpenAIAdsRequiredIdempotencyOptions, 'adAccountId'>,\n ) =>\n this.run(\n REST_OPERATIONS['adAccountCreationSessions.create'],\n options,\n {},\n (signal) =>\n raw\n .createAdAccountCreationSessionMethod({\n body,\n client: this.client,\n headers: { 'Idempotency-Key': options.idempotencyKey },\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n }\n\n readonly oauth = {\n getMe: (options: OpenAIAdsRequestOptions = {}) =>\n this.run(REST_OPERATIONS['oauth.getMe'], options, {}, (signal) =>\n raw\n .getAdsOAuthMeMethod({\n client: this.client,\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n }\n\n readonly insights = {\n adAccount: (\n query: Query<raw.GetAdAccountInsightsMethodData> = {},\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(REST_OPERATIONS['insights.adAccount'], options, {}, (signal) =>\n raw\n .getAdAccountInsightsMethod({\n client: this.client,\n headers: this.accountHeaders(options),\n query,\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n campaign: (\n campaignId: string,\n query: Query<raw.GetCampaignInsightsMethodData> = {},\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(\n REST_OPERATIONS['insights.campaign'],\n options,\n { campaign_id: campaignId },\n (signal) =>\n raw\n .getCampaignInsightsMethod({\n client: this.client,\n headers: this.accountHeaders(options),\n path: { campaign_id: campaignId },\n query,\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n adGroup: (\n adGroupId: string,\n query: Query<raw.GetAdGroupInsightsMethodData> = {},\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(\n REST_OPERATIONS['insights.adGroup'],\n options,\n { ad_group_id: adGroupId },\n (signal) =>\n raw\n .getAdGroupInsightsMethod({\n client: this.client,\n headers: this.accountHeaders(options),\n path: { ad_group_id: adGroupId },\n query,\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n ad: (\n adId: string,\n query: Query<raw.GetAdInsightsMethodData> = {},\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(\n REST_OPERATIONS['insights.ad'],\n options,\n { ad_id: adId },\n (signal) =>\n raw\n .getAdInsightsMethod({\n client: this.client,\n headers: this.accountHeaders(options),\n path: { ad_id: adId },\n query,\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n }\n\n readonly geo = {\n search: (\n query: Query<raw.GetGeoLookupMethodData>,\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(REST_OPERATIONS['geo.search'], options, {}, (signal) =>\n raw\n .getGeoLookupMethod({\n client: this.client,\n headers: this.accountHeaders(options),\n query,\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n }\n\n readonly leadSync = {\n subscriptions: {\n create: (\n body: Body<raw.CreateLeadSyncSubscriptionMethodData>,\n options: OpenAIAdsRequiredIdempotencyOptions,\n ) =>\n this.run(\n REST_OPERATIONS['leadSync.subscriptions.create'],\n options,\n {},\n (signal) =>\n raw\n .createLeadSyncSubscriptionMethod({\n body,\n client: this.client,\n headers: this.requiredIdempotencyHeaders(options),\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n list: (\n query: Query<raw.ListLeadSyncSubscriptionsMethodData>,\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(\n REST_OPERATIONS['leadSync.subscriptions.list'],\n options,\n {},\n (signal) =>\n raw\n .listLeadSyncSubscriptionsMethod({\n client: this.client,\n headers: this.accountHeaders(options),\n query,\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n get: (\n subscriptionId: string,\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(\n REST_OPERATIONS['leadSync.subscriptions.get'],\n options,\n { subscription_id: subscriptionId },\n (signal) =>\n raw\n .getLeadSyncSubscriptionMethod({\n client: this.client,\n headers: this.accountHeaders(options),\n path: { subscription_id: subscriptionId },\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n delete: (\n subscriptionId: string,\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(\n REST_OPERATIONS['leadSync.subscriptions.delete'],\n options,\n { subscription_id: subscriptionId },\n (signal) =>\n raw\n .deleteLeadSyncSubscriptionMethod({\n client: this.client,\n headers: this.accountHeaders(options),\n path: { subscription_id: subscriptionId },\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n },\n }\n\n readonly conversions = {\n apiKeys: {\n create: (\n body: Body<raw.CreateConversionApiKeyMethodData>,\n options: OpenAIAdsRequestOptions = {},\n ) =>\n this.run(\n REST_OPERATIONS['conversions.apiKeys.create'],\n options,\n {},\n (signal) =>\n raw\n .createConversionApiKeyMethod({\n body,\n client: this.client,\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n },\n eventSettings: {\n create: (\n body: Body<raw.CreateConversionEventSettingMethodData>,\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(\n REST_OPERATIONS['conversions.eventSettings.create'],\n options,\n {},\n (signal) =>\n raw\n .createConversionEventSettingMethod({\n body,\n client: this.client,\n headers: this.accountHeaders(options),\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n list: (\n query: Query<raw.ListConversionEventSettingsMethodData> = {},\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(\n REST_OPERATIONS['conversions.eventSettings.list'],\n options,\n {},\n (signal) =>\n raw\n .listConversionEventSettingsMethod({\n client: this.client,\n headers: this.accountHeaders(options),\n query,\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n },\n pixels: {\n create: (\n body: Body<raw.CreateConversionSourceMethodData>,\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(\n REST_OPERATIONS['conversions.pixels.create'],\n options,\n {},\n (signal) =>\n raw\n .createConversionSourceMethod({\n body,\n client: this.client,\n headers: this.accountHeaders(options),\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n list: (\n query: Query<raw.ListConversionSourcesMethodData> = {},\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(\n REST_OPERATIONS['conversions.pixels.list'],\n options,\n {},\n (signal) =>\n raw\n .listConversionSourcesMethod({\n client: this.client,\n headers: this.accountHeaders(options),\n query,\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n },\n events: {\n list: (\n query: Query<raw.ListConversionEventsMethodData>,\n options: OpenAIAdsRequestOptions = {},\n ) =>\n this.run(\n REST_OPERATIONS['conversions.events.list'],\n options,\n {},\n (signal) =>\n raw\n .listConversionEventsMethod({\n client: this.client,\n query,\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n },\n insights: {\n query: (\n body: Body<raw.PostConversionInsightsMethodData>,\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(\n REST_OPERATIONS['conversions.insights.query'],\n options,\n {},\n (signal) =>\n raw\n .postConversionInsightsMethod({\n body,\n client: this.client,\n headers: this.accountHeaders(options),\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n },\n }\n\n readonly adGroups = {\n list: (\n query: Query<raw.ListAdGroupsMethodData> = {},\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(REST_OPERATIONS['adGroups.list'], options, {}, (signal) =>\n raw\n .listAdGroupsMethod({\n client: this.client,\n headers: this.accountHeaders(options),\n query,\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n create: (\n body: Body<raw.CreateAdGroupMethodData>,\n options: OpenAIAdsOptionalIdempotencyOptions = {},\n ) =>\n this.run(REST_OPERATIONS['adGroups.create'], options, {}, (signal) =>\n raw\n .createAdGroupMethod({\n body,\n client: this.client,\n headers: this.optionalIdempotencyHeaders(options),\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n get: (\n adGroupId: string,\n query: Query<raw.GetAdGroupMethodData> = {},\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(\n REST_OPERATIONS['adGroups.get'],\n options,\n { ad_group_id: adGroupId },\n (signal) =>\n raw\n .getAdGroupMethod({\n client: this.client,\n headers: this.accountHeaders(options),\n path: { ad_group_id: adGroupId },\n query,\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n update: (\n adGroupId: string,\n body: Body<raw.UpdateAdGroupMethodData>,\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(\n REST_OPERATIONS['adGroups.update'],\n options,\n { ad_group_id: adGroupId },\n (signal) =>\n raw\n .updateAdGroupMethod({\n body,\n client: this.client,\n headers: this.accountHeaders(options),\n path: { ad_group_id: adGroupId },\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n activate: (\n adGroupId: string,\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(\n REST_OPERATIONS['adGroups.activate'],\n options,\n { ad_group_id: adGroupId },\n (signal) =>\n raw\n .activateAdGroupMethod({\n client: this.client,\n headers: this.accountHeaders(options),\n path: { ad_group_id: adGroupId },\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n pause: (adGroupId: string, options: OpenAIAdsAccountRequestOptions = {}) =>\n this.run(\n REST_OPERATIONS['adGroups.pause'],\n options,\n { ad_group_id: adGroupId },\n (signal) =>\n raw\n .pauseAdGroupMethod({\n client: this.client,\n headers: this.accountHeaders(options),\n path: { ad_group_id: adGroupId },\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n archive: (\n adGroupId: string,\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(\n REST_OPERATIONS['adGroups.archive'],\n options,\n { ad_group_id: adGroupId },\n (signal) =>\n raw\n .archiveAdGroupMethod({\n client: this.client,\n headers: this.accountHeaders(options),\n path: { ad_group_id: adGroupId },\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n }\n\n readonly ads = {\n list: (\n query: Query<raw.ListAdsMethodData> = {},\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(REST_OPERATIONS['ads.list'], options, {}, (signal) =>\n raw\n .listAdsMethod({\n client: this.client,\n headers: this.accountHeaders(options),\n query,\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n create: (\n body: Body<raw.CreateAdMethodData>,\n options: OpenAIAdsOptionalIdempotencyOptions = {},\n ) =>\n this.run(REST_OPERATIONS['ads.create'], options, {}, (signal) =>\n raw\n .createAdMethod({\n body,\n client: this.client,\n headers: this.optionalIdempotencyHeaders(options),\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n get: (\n adId: string,\n query: Query<raw.GetAdMethodData> = {},\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(REST_OPERATIONS['ads.get'], options, { ad_id: adId }, (signal) =>\n raw\n .getAdMethod({\n client: this.client,\n headers: this.accountHeaders(options),\n path: { ad_id: adId },\n query,\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n update: (\n adId: string,\n body: Body<raw.UpdateAdMethodData>,\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(\n REST_OPERATIONS['ads.update'],\n options,\n { ad_id: adId },\n (signal) =>\n raw\n .updateAdMethod({\n body,\n client: this.client,\n headers: this.accountHeaders(options),\n path: { ad_id: adId },\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n preview: (adId: string, options: OpenAIAdsAccountRequestOptions = {}) =>\n this.run(\n REST_OPERATIONS['ads.preview'],\n options,\n { ad_id: adId },\n (signal) =>\n raw\n .createAdPreviewMethod({\n client: this.client,\n headers: this.accountHeaders(options),\n path: { ad_id: adId },\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n activate: (adId: string, options: OpenAIAdsAccountRequestOptions = {}) =>\n this.run(\n REST_OPERATIONS['ads.activate'],\n options,\n { ad_id: adId },\n (signal) =>\n raw\n .activateAdMethod({\n client: this.client,\n headers: this.accountHeaders(options),\n path: { ad_id: adId },\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n pause: (adId: string, options: OpenAIAdsAccountRequestOptions = {}) =>\n this.run(\n REST_OPERATIONS['ads.pause'],\n options,\n { ad_id: adId },\n (signal) =>\n raw\n .pauseAdMethod({\n client: this.client,\n headers: this.accountHeaders(options),\n path: { ad_id: adId },\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n archive: (adId: string, options: OpenAIAdsAccountRequestOptions = {}) =>\n this.run(\n REST_OPERATIONS['ads.archive'],\n options,\n { ad_id: adId },\n (signal) =>\n raw\n .archiveAdMethod({\n client: this.client,\n headers: this.accountHeaders(options),\n path: { ad_id: adId },\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n }\n\n readonly files = {\n uploadBlob: (\n body: UploadBlobInput,\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(REST_OPERATIONS['files.uploadBlob'], options, {}, (signal) =>\n raw\n .uploadBlobMethod({\n body,\n client: this.client,\n headers: this.accountHeaders(options),\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n uploadImage: (\n body: UploadImageInput,\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(REST_OPERATIONS['files.uploadImage'], options, {}, (signal) => {\n const multipart = 'file' in body\n const headers = this.accountHeaders(options) as Record<\n string,\n null | string | undefined\n >\n\n if (multipart) {\n headers['Content-Type'] = null\n }\n\n return raw\n .uploadImageMethod({\n ...(multipart ? formDataBodySerializer : {}),\n body,\n client: this.client,\n headers,\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data)\n }),\n }\n\n readonly productFeeds = {\n archive: (feedId: string, options: OpenAIAdsAccountRequestOptions = {}) =>\n this.run(\n REST_OPERATIONS['productFeeds.archive'],\n options,\n { feed_id: feedId },\n (signal) =>\n raw\n .archiveProductFeedMethod({\n client: this.client,\n headers: this.accountHeaders(options),\n path: { feed_id: feedId },\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n create: (\n body: Body<raw.CreateProductFeedMethodData>,\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(REST_OPERATIONS['productFeeds.create'], options, {}, (signal) =>\n raw\n .createProductFeedMethod({\n body,\n client: this.client,\n headers: this.accountHeaders(options),\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n list: (\n query: Query<raw.ListProductFeedsMethodData> = {},\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(REST_OPERATIONS['productFeeds.list'], options, {}, (signal) =>\n raw\n .listProductFeedsMethod({\n client: this.client,\n headers: this.accountHeaders(options),\n query,\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n uploads: {\n list: (\n query: Query<raw.ListProductFeedUploadsMethodData> = {},\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(\n REST_OPERATIONS['productFeeds.uploads.list'],\n options,\n {},\n (signal) =>\n raw\n .listProductFeedUploadsMethod({\n client: this.client,\n headers: this.accountHeaders(options),\n query,\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n },\n products: {\n query: (\n feedId: string,\n body: Body<raw.QueryProductFeedProductsMethodData>,\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(\n REST_OPERATIONS['productFeeds.products.query'],\n options,\n { feed_id: feedId },\n (signal) =>\n raw\n .queryProductFeedProductsMethod({\n body,\n client: this.client,\n headers: this.accountHeaders(options),\n path: { feed_id: feedId },\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n patch: (\n feedId: string,\n body: Body<raw.PatchProductFeedProductsMethodData>,\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(\n REST_OPERATIONS['productFeeds.products.patch'],\n options,\n { feed_id: feedId },\n (signal) =>\n raw\n .patchProductFeedProductsMethod({\n body,\n client: this.client,\n headers: this.accountHeaders(options),\n path: { feed_id: feedId },\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n },\n sftpAccess: {\n get: (feedId: string, options: OpenAIAdsAccountRequestOptions = {}) =>\n this.run(\n REST_OPERATIONS['productFeeds.sftpAccess.get'],\n options,\n { feed_id: feedId },\n (signal) =>\n raw\n .getProductFeedSftpAccessMethod({\n client: this.client,\n headers: this.accountHeaders(options),\n path: { feed_id: feedId },\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n createOrReplace: (\n feedId: string,\n body: Body<raw.PostProductFeedSftpAccessMethodData>,\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(\n REST_OPERATIONS['productFeeds.sftpAccess.createOrReplace'],\n options,\n { feed_id: feedId },\n (signal) =>\n raw\n .postProductFeedSftpAccessMethod({\n body,\n client: this.client,\n headers: this.accountHeaders(options),\n path: { feed_id: feedId },\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n activate: (\n feedId: string,\n options: OpenAIAdsAccountRequestOptions = {},\n ) =>\n this.run(\n REST_OPERATIONS['productFeeds.sftpAccess.activate'],\n options,\n { feed_id: feedId },\n (signal) =>\n raw\n .postProductFeedSftpAccessActivateMethod({\n client: this.client,\n headers: this.accountHeaders(options),\n path: { feed_id: feedId },\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n pause: (feedId: string, options: OpenAIAdsAccountRequestOptions = {}) =>\n this.run(\n REST_OPERATIONS['productFeeds.sftpAccess.pause'],\n options,\n { feed_id: feedId },\n (signal) =>\n raw\n .postProductFeedSftpAccessPauseMethod({\n client: this.client,\n headers: this.accountHeaders(options),\n path: { feed_id: feedId },\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n },\n }\n\n readonly partnerData = {\n uploads: {\n create: (\n body: Body<raw.CreatePartnerDataUploadMethodData>,\n options: OpenAIAdsRequestOptions = {},\n ) =>\n this.run(\n REST_OPERATIONS['partnerData.uploads.create'],\n options,\n {},\n (signal) =>\n raw\n .createPartnerDataUploadMethod({\n body,\n client: this.client,\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n get: (uploadId: string, options: OpenAIAdsRequestOptions = {}) =>\n this.run(\n REST_OPERATIONS['partnerData.uploads.get'],\n options,\n { upload_id: uploadId },\n (signal) =>\n raw\n .getPartnerDataUploadMethod({\n client: this.client,\n path: { upload_id: uploadId },\n signal,\n throwOnError: true,\n })\n .then(({ data }) => data),\n ),\n },\n }\n\n private readonly baseUrl: string\n private readonly client: Client\n private readonly credential: OpenAIAdsCredential\n private readonly credentialMode: CredentialMode\n private readonly defaultAdAccountId?: string\n private readonly defaultTimeoutMs?: number\n\n constructor(options: OpenAIAdsOptions) {\n this.baseUrl = normalizeBaseUrl(options.baseUrl ?? DEFAULT_BASE_URL)\n this.defaultAdAccountId = options.adAccountId\n this.defaultTimeoutMs = validateTimeout(options.timeoutMs)\n\n if (\n (options.apiKey === undefined) ===\n (options.accessToken === undefined)\n ) {\n throw new OpenAIAdsConfigurationError(\n 'Provide exactly one of apiKey or accessToken',\n )\n }\n\n if (options.apiKey !== undefined) {\n this.credential = options.apiKey\n this.credentialMode = 'apiKey'\n } else {\n this.credential = options.accessToken\n this.credentialMode = 'accessToken'\n }\n\n validateStaticCredential(this.credential)\n\n const baseFetch = options.fetch ?? globalThis.fetch\n if (typeof baseFetch !== 'function') {\n throw new OpenAIAdsConfigurationError(\n 'A Fetch API implementation is required',\n )\n }\n\n this.client = createClient({\n baseUrl: this.baseUrl,\n fetch: this.authenticatedFetch(baseFetch),\n responseStyle: 'fields',\n throwOnError: true,\n })\n }\n\n private accountHeaders(\n options: OpenAIAdsAccountRequestOptions,\n ): AccountHeaders {\n const adAccountId = options.adAccountId ?? this.defaultAdAccountId\n return adAccountId ? { 'OpenAI-Ad-Account': adAccountId } : {}\n }\n\n private optionalIdempotencyHeaders(\n options: OpenAIAdsOptionalIdempotencyOptions,\n ): OptionalIdempotencyHeaders {\n return {\n ...this.accountHeaders(options),\n ...(options.idempotencyKey\n ? { 'Idempotency-Key': options.idempotencyKey }\n : {}),\n }\n }\n\n private requiredIdempotencyHeaders(\n options: OpenAIAdsRequiredIdempotencyOptions,\n ): RequiredIdempotencyHeaders {\n return {\n ...this.accountHeaders(options),\n 'Idempotency-Key': options.idempotencyKey,\n }\n }\n\n private assertAuthentication(requirement: OpenAIAdsAuthRequirement): void {\n if (requirement !== 'either' && requirement !== this.credentialMode) {\n throw new OpenAIAdsConfigurationError(\n requirement === 'apiKey'\n ? 'This operation requires an Ads API key'\n : 'This operation requires an Ads OAuth access token',\n )\n }\n }\n\n private authenticatedFetch(baseFetch: typeof fetch): typeof fetch {\n return async (input, init) => {\n const request = new Request(input, init)\n const credential = await resolveCredential(this.credential)\n const headers = new Headers(request.headers)\n headers.set('Authorization', `Bearer ${credential}`)\n const authenticatedRequest = new Request(request, { headers })\n const response = await baseFetch(authenticatedRequest)\n\n if (!response.ok) {\n throw await createApiError(response, authenticatedRequest)\n }\n\n return response\n }\n }\n\n private async run<T>(\n operation: OpenAIAdsRestOperation,\n options: OpenAIAdsRequestOptions,\n pathValues: PathValues,\n request: (signal: AbortSignal | undefined) => Promise<T>,\n ): Promise<T> {\n this.assertAuthentication(operation.auth)\n\n const timeoutMs =\n options.timeoutMs === undefined\n ? this.defaultTimeoutMs\n : validateTimeout(options.timeoutMs)\n\n if (timeoutMs === undefined) {\n return request(options.signal)\n }\n\n const controller = new AbortController()\n const removeAbortForwarder = forwardAbort(options.signal, controller)\n const summary = {\n method: operation.method,\n url: this.operationUrl(operation, pathValues),\n }\n const timeoutError = new OpenAIAdsTimeoutError(timeoutMs, summary)\n let rejectTimeout!: (error: OpenAIAdsTimeoutError) => void\n const timeout = new Promise<never>((_resolve, reject) => {\n rejectTimeout = reject\n })\n const timer = setTimeout(() => {\n controller.abort(timeoutError)\n rejectTimeout(timeoutError)\n }, timeoutMs)\n\n try {\n return await Promise.race([request(controller.signal), timeout])\n } finally {\n clearTimeout(timer)\n removeAbortForwarder()\n }\n }\n\n private operationUrl(\n operation: OpenAIAdsRestOperation,\n pathValues: PathValues,\n ): string {\n const path = operation.path.replaceAll(\n /\\{([^}]+)\\}/g,\n (_match, key: string) => encodeURIComponent(String(pathValues[key])),\n )\n return `${this.baseUrl}${path}`\n }\n}\n\nfunction normalizeBaseUrl(baseUrl: string): string {\n const normalized = baseUrl.replace(/\\/+$/, '')\n if (!normalized) {\n throw new OpenAIAdsConfigurationError('baseUrl must not be empty')\n }\n return normalized\n}\n\nfunction validateStaticCredential(credential: OpenAIAdsCredential): void {\n if (typeof credential === 'string' && credential.trim().length === 0) {\n throw new OpenAIAdsConfigurationError('The credential must not be empty')\n }\n}\n\nasync function resolveCredential(\n credential: OpenAIAdsCredential,\n): Promise<string> {\n const value =\n typeof credential === 'function' ? await credential() : credential\n if (value.trim().length === 0) {\n throw new OpenAIAdsConfigurationError('The credential must not be empty')\n }\n return value\n}\n\nfunction validateTimeout(timeoutMs: number | undefined): number | undefined {\n if (timeoutMs === undefined) {\n return undefined\n }\n if (\n !Number.isFinite(timeoutMs) ||\n !Number.isInteger(timeoutMs) ||\n timeoutMs <= 0\n ) {\n throw new OpenAIAdsConfigurationError(\n 'timeoutMs must be a positive finite integer',\n )\n }\n return timeoutMs\n}\n\nfunction forwardAbort(\n signal: AbortSignal | undefined,\n controller: AbortController,\n): () => void {\n if (signal === undefined) {\n return () => {\n return undefined\n }\n }\n\n const abort = () => {\n controller.abort(signal.reason)\n }\n if (signal.aborted) {\n abort()\n return () => {\n return undefined\n }\n }\n\n signal.addEventListener('abort', abort, { once: true })\n return () => {\n signal.removeEventListener('abort', abort)\n }\n}\n\nasync function createApiError(\n response: Response,\n request: Request,\n): Promise<OpenAIAdsApiError> {\n const text = await response.clone().text()\n let payload: unknown = text\n\n if (text) {\n try {\n payload = JSON.parse(text)\n } catch {\n payload = text\n }\n }\n\n const envelope = isRecord(payload) ? payload['error'] : undefined\n const details = isRecord(envelope) ? envelope : undefined\n const message =\n typeof details?.['message'] === 'string'\n ? details['message']\n : `OpenAI Ads API request failed with status ${String(response.status)}`\n\n return new OpenAIAdsApiError({\n ...(typeof details?.['code'] === 'string' ? { code: details['code'] } : {}),\n message,\n ...(details?.['param'] === null || typeof details?.['param'] === 'string'\n ? { param: details['param'] }\n : {}),\n payload,\n request: { method: request.method, url: request.url },\n response,\n status: response.status,\n statusText: response.statusText,\n ...(typeof details?.['type'] === 'string' ? { type: details['type'] } : {}),\n })\n}\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n return typeof value === 'object' && value !== null\n}\n"],"mappings":";;AAiBA,IAAa,oBAAb,cAAuC,MAAM;CAC3C;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CAEA,YAAY,SAAmC;EAC7C,MAAM,QAAQ,OAAO;EACrB,KAAK,OAAO;EACZ,KAAK,OAAO,QAAQ;EACpB,KAAK,QAAQ,QAAQ;EACrB,KAAK,UAAU,QAAQ;EACvB,KAAK,UAAU,QAAQ;EACvB,KAAK,WAAW,QAAQ;EACxB,KAAK,SAAS,QAAQ;EACtB,KAAK,aAAa,QAAQ;EAC1B,KAAK,OAAO,QAAQ;CACtB;AACF;AAEA,IAAa,wBAAb,cAA2C,MAAM;CAC/C;CACA;CAEA,YAAY,WAAmB,SAAkC;EAC/D,MAAM,0CAA0C,OAAO,SAAS,EAAE,IAAI;EACtE,KAAK,OAAO;EACZ,KAAK,UAAU;EACf,KAAK,YAAY;CACnB;AACF;AAEA,IAAa,8BAAb,cAAiD,MAAM;CACrD,YAAY,SAAiB;EAC3B,MAAM,OAAO;EACb,KAAK,OAAO;CACd;AACF;;;AC9CA,MAAa,kBAAkB;CAC7B,kBAAkB,KAAK,uBAAuB,OAAO,YAAY;CACjE,oBAAoB,KAAK,wBAAwB,QAAQ,cAAc,EACrE,aAAa,WACf,CAAC;CACD,iBAAiB,KAAK,qBAAqB,OAAO,0BAA0B;CAC5E,oBAAoB,KAClB,wBACA,QACA,0BACF;CACA,sBAAsB,KACpB,0BACA,QACA,mCACF;CACA,mBAAmB,KACjB,uBACA,QACA,gCACF;CACA,qBAAqB,KACnB,yBACA,QACA,kCACF;CACA,wBAAwB,KACtB,6BACA,OACA,mBACF;CACA,0BAA0B,KACxB,8BACA,QACA,mBACF;CACA,uBAAuB,KACrB,2BACA,OACA,wCACF;CACA,2BAA2B,KACzB,+BACA,QACA,gDACF;CACA,8BAA8B,KAC5B,kCACA,QACA,8CACA,EAAE,aAAa,WAAW,CAC5B;CACA,iCAAiC,KAC/B,qCACA,QACA,iDACA,EAAE,aAAa,WAAW,CAC5B;CACA,kCAAkC,KAChC,sCACA,QACA,kDACA,EAAE,aAAa,WAAW,CAC5B;CACA,yBAAyB,KACvB,8BACA,QACA,2BACA,EAAE,aAAa,WAAW,CAC5B;CACA,kCAAkC,KAChC,oCACA,OACA,kEACF;CACA,2BAA2B,KACzB,gCACA,OACA,yBACA;EAAE,eAAe;EAAO,MAAM;CAAS,CACzC;CACA,uBAAuB,KACrB,4BACA,OACA,kBACF;CACA,yBAAyB,KACvB,6BACA,QACA,kBACF;CACA,kBAAkB,KAAK,uBAAuB,OAAO,aAAa;CAClE,oBAAoB,KAAK,wBAAwB,QAAQ,aAAa;CACtE,iBAAiB,KACf,qBACA,OACA,4BACF;CACA,oBAAoB,KAClB,wBACA,QACA,4BACF;CACA,qBAAqB,KACnB,yBACA,QACA,oCACF;CACA,qBAAqB,KACnB,yBACA,QACA,oCACF;CACA,oCAAoC,KAClC,kCACA,QACA,+CACA,EAAE,aAAa,WAAW,CAC5B;CACA,sBAAsB,KACpB,0BACA,OACA,sCACF;CACA,yBAAyB,KACvB,6BACA,QACA,sCACF;CACA,0BAA0B,KACxB,8BACA,QACA,8CACF;CACA,0BAA0B,KACxB,8BACA,QACA,8CACF;CACA,kBAAkB,KAAK,sBAAsB,QAAQ,aAAa;EAChE,eAAe;EACf,MAAM;CACR,CAAC;CACD,yBAAyB,KACvB,yBACA,QACA,mBACF;CACA,oCAAoC,KAClC,yCACA,QACA,+BACF;CACA,sBAAsB,KACpB,2BACA,QACA,sBACF;CACA,mBAAmB,KAAK,wBAAwB,QAAQ,mBAAmB;CAC3E,mBAAmB,KAAK,wBAAwB,OAAO,gBAAgB,EACrE,eAAe,MACjB,CAAC;CACD,oCAAoC,KAClC,wCACA,QACA,iCACA;EACE,eAAe;EACf,MAAM;EACN,aAAa;CACf,CACF;CACA,eAAe,KAAK,uBAAuB,OAAO,OAAO;EACvD,eAAe;EACf,MAAM;CACR,CAAC;CACD,iBAAiB,KAAK,sBAAsB,OAAO,aAAa;CAChE,oCAAoC,KAClC,uCACA,OACA,iCACF;CACA,sCAAsC,KACpC,yCACA,QACA,iCACF;CACA,sCAAsC,KACpC,yCACA,QACA,6CACF;CACA,sCAAsC,KACpC,yCACA,QACA,oDACF;CACA,sBAAsB,KACpB,8BACA,OACA,sBACF;CACA,qBAAqB,KACnB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"}
|
package/dist/raw.cjs
ADDED
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
+
const require_sdk_gen = require("./sdk.gen-DZPUCME9.cjs");
|
|
3
|
+
//#region src/generated/core/queryKeySerializer.gen.ts
|
|
4
|
+
/**
|
|
5
|
+
* Replacer that converts non-JSON values (bigint, Date, etc.) to safe substitutes.
|
|
6
|
+
*/
|
|
7
|
+
const queryKeyJsonReplacer = (_key, value) => {
|
|
8
|
+
if (value === void 0 || typeof value === "function" || typeof value === "symbol") return;
|
|
9
|
+
if (typeof value === "bigint") return value.toString();
|
|
10
|
+
if (value instanceof Date) return value.toISOString();
|
|
11
|
+
return value;
|
|
12
|
+
};
|
|
13
|
+
/**
|
|
14
|
+
* Safely stringifies a value and parses it back into a JsonValue.
|
|
15
|
+
*/
|
|
16
|
+
const stringifyToJsonValue = (input) => {
|
|
17
|
+
try {
|
|
18
|
+
const json = JSON.stringify(input, queryKeyJsonReplacer);
|
|
19
|
+
if (json === void 0) return;
|
|
20
|
+
return JSON.parse(json);
|
|
21
|
+
} catch {
|
|
22
|
+
return;
|
|
23
|
+
}
|
|
24
|
+
};
|
|
25
|
+
/**
|
|
26
|
+
* Detects plain objects (including objects with a null prototype).
|
|
27
|
+
*/
|
|
28
|
+
const isPlainObject = (value) => {
|
|
29
|
+
if (value === null || typeof value !== "object") return false;
|
|
30
|
+
const prototype = Object.getPrototypeOf(value);
|
|
31
|
+
return prototype === Object.prototype || prototype === null;
|
|
32
|
+
};
|
|
33
|
+
/**
|
|
34
|
+
* Turns URLSearchParams into a sorted JSON object for deterministic keys.
|
|
35
|
+
*/
|
|
36
|
+
const serializeSearchParams = (params) => {
|
|
37
|
+
const entries = Array.from(params.entries()).sort(([a], [b]) => a.localeCompare(b));
|
|
38
|
+
const result = {};
|
|
39
|
+
for (const [key, value] of entries) {
|
|
40
|
+
const existing = result[key];
|
|
41
|
+
if (existing === void 0) {
|
|
42
|
+
result[key] = value;
|
|
43
|
+
continue;
|
|
44
|
+
}
|
|
45
|
+
if (Array.isArray(existing)) existing.push(value);
|
|
46
|
+
else result[key] = [existing, value];
|
|
47
|
+
}
|
|
48
|
+
return result;
|
|
49
|
+
};
|
|
50
|
+
/**
|
|
51
|
+
* Normalizes any accepted value into a JSON-friendly shape for query keys.
|
|
52
|
+
*/
|
|
53
|
+
const serializeQueryKeyValue = (value) => {
|
|
54
|
+
if (value === null) return null;
|
|
55
|
+
if (typeof value === "string" || typeof value === "number" || typeof value === "boolean") return value;
|
|
56
|
+
if (value === void 0 || typeof value === "function" || typeof value === "symbol") return;
|
|
57
|
+
if (typeof value === "bigint") return value.toString();
|
|
58
|
+
if (value instanceof Date) return value.toISOString();
|
|
59
|
+
if (Array.isArray(value)) return stringifyToJsonValue(value);
|
|
60
|
+
if (typeof URLSearchParams !== "undefined" && value instanceof URLSearchParams) return serializeSearchParams(value);
|
|
61
|
+
if (isPlainObject(value)) return stringifyToJsonValue(value);
|
|
62
|
+
};
|
|
63
|
+
//#endregion
|
|
64
|
+
exports.activateAdAccountMethod = require_sdk_gen.activateAdAccountMethod;
|
|
65
|
+
exports.activateAdGroupMethod = require_sdk_gen.activateAdGroupMethod;
|
|
66
|
+
exports.activateAdMethod = require_sdk_gen.activateAdMethod;
|
|
67
|
+
exports.activateCampaignMethod = require_sdk_gen.activateCampaignMethod;
|
|
68
|
+
exports.addCustomAudienceMembersMethod = require_sdk_gen.addCustomAudienceMembersMethod;
|
|
69
|
+
exports.archiveAdGroupMethod = require_sdk_gen.archiveAdGroupMethod;
|
|
70
|
+
exports.archiveAdMethod = require_sdk_gen.archiveAdMethod;
|
|
71
|
+
exports.archiveCampaignMethod = require_sdk_gen.archiveCampaignMethod;
|
|
72
|
+
exports.archiveCustomAudienceMethod = require_sdk_gen.archiveCustomAudienceMethod;
|
|
73
|
+
exports.archiveLeadFormMethod = require_sdk_gen.archiveLeadFormMethod;
|
|
74
|
+
exports.archiveProductFeedMethod = require_sdk_gen.archiveProductFeedMethod;
|
|
75
|
+
exports.createAdAccountCreationSessionMethod = require_sdk_gen.createAdAccountCreationSessionMethod;
|
|
76
|
+
exports.createAdAccountSpendLimitWindowMethod = require_sdk_gen.createAdAccountSpendLimitWindowMethod;
|
|
77
|
+
exports.createAdGroupMethod = require_sdk_gen.createAdGroupMethod;
|
|
78
|
+
exports.createAdMethod = require_sdk_gen.createAdMethod;
|
|
79
|
+
exports.createAdPreviewMethod = require_sdk_gen.createAdPreviewMethod;
|
|
80
|
+
exports.createApiKeyMethod = require_sdk_gen.createApiKeyMethod;
|
|
81
|
+
exports.createBusinessAgentMethod = require_sdk_gen.createBusinessAgentMethod;
|
|
82
|
+
exports.createCampaignMethod = require_sdk_gen.createCampaignMethod;
|
|
83
|
+
exports.createClient = require_sdk_gen.createClient;
|
|
84
|
+
exports.createConfig = require_sdk_gen.createConfig;
|
|
85
|
+
exports.createConversionApiKeyMethod = require_sdk_gen.createConversionApiKeyMethod;
|
|
86
|
+
exports.createConversionEventSettingMethod = require_sdk_gen.createConversionEventSettingMethod;
|
|
87
|
+
exports.createConversionSourceMethod = require_sdk_gen.createConversionSourceMethod;
|
|
88
|
+
exports.createCustomAudienceMethod = require_sdk_gen.createCustomAudienceMethod;
|
|
89
|
+
exports.createLeadFormMethod = require_sdk_gen.createLeadFormMethod;
|
|
90
|
+
exports.createLeadSyncSubscriptionMethod = require_sdk_gen.createLeadSyncSubscriptionMethod;
|
|
91
|
+
exports.createPartnerDataUploadMethod = require_sdk_gen.createPartnerDataUploadMethod;
|
|
92
|
+
exports.createProductFeedMethod = require_sdk_gen.createProductFeedMethod;
|
|
93
|
+
exports.createTestLeadSubmissionMethod = require_sdk_gen.createTestLeadSubmissionMethod;
|
|
94
|
+
exports.deleteAdAccountSpendLimitWindowMethod = require_sdk_gen.deleteAdAccountSpendLimitWindowMethod;
|
|
95
|
+
exports.deleteLeadSyncSubscriptionMethod = require_sdk_gen.deleteLeadSyncSubscriptionMethod;
|
|
96
|
+
exports.formDataBodySerializer = require_sdk_gen.formDataBodySerializer;
|
|
97
|
+
exports.getAdAccountInsightsMethod = require_sdk_gen.getAdAccountInsightsMethod;
|
|
98
|
+
exports.getAdAccountMethod = require_sdk_gen.getAdAccountMethod;
|
|
99
|
+
exports.getAdAccountSpendLimitWindowsMethod = require_sdk_gen.getAdAccountSpendLimitWindowsMethod;
|
|
100
|
+
exports.getAdGroupInsightsMethod = require_sdk_gen.getAdGroupInsightsMethod;
|
|
101
|
+
exports.getAdGroupMethod = require_sdk_gen.getAdGroupMethod;
|
|
102
|
+
exports.getAdInsightsMethod = require_sdk_gen.getAdInsightsMethod;
|
|
103
|
+
exports.getAdMethod = require_sdk_gen.getAdMethod;
|
|
104
|
+
exports.getAdsOAuthMeMethod = require_sdk_gen.getAdsOAuthMeMethod;
|
|
105
|
+
exports.getBusinessAgentMethod = require_sdk_gen.getBusinessAgentMethod;
|
|
106
|
+
exports.getCampaignInsightsMethod = require_sdk_gen.getCampaignInsightsMethod;
|
|
107
|
+
exports.getCampaignMethod = require_sdk_gen.getCampaignMethod;
|
|
108
|
+
exports.getCustomAudienceMethod = require_sdk_gen.getCustomAudienceMethod;
|
|
109
|
+
exports.getCustomAudienceOperationMethod = require_sdk_gen.getCustomAudienceOperationMethod;
|
|
110
|
+
exports.getGeoLookupMethod = require_sdk_gen.getGeoLookupMethod;
|
|
111
|
+
exports.getLeadFormMethod = require_sdk_gen.getLeadFormMethod;
|
|
112
|
+
exports.getLeadSyncSubscriptionMethod = require_sdk_gen.getLeadSyncSubscriptionMethod;
|
|
113
|
+
exports.getPartnerDataUploadMethod = require_sdk_gen.getPartnerDataUploadMethod;
|
|
114
|
+
exports.getProductFeedSftpAccessMethod = require_sdk_gen.getProductFeedSftpAccessMethod;
|
|
115
|
+
exports.jsonBodySerializer = require_sdk_gen.jsonBodySerializer;
|
|
116
|
+
exports.listAdAccountsMethod = require_sdk_gen.listAdAccountsMethod;
|
|
117
|
+
exports.listAdGroupsMethod = require_sdk_gen.listAdGroupsMethod;
|
|
118
|
+
exports.listAdsMethod = require_sdk_gen.listAdsMethod;
|
|
119
|
+
exports.listBusinessAgentToolsMethod = require_sdk_gen.listBusinessAgentToolsMethod;
|
|
120
|
+
exports.listBusinessAgentsMethod = require_sdk_gen.listBusinessAgentsMethod;
|
|
121
|
+
exports.listCampaignsMethod = require_sdk_gen.listCampaignsMethod;
|
|
122
|
+
exports.listConversionEventSettingsMethod = require_sdk_gen.listConversionEventSettingsMethod;
|
|
123
|
+
exports.listConversionEventsMethod = require_sdk_gen.listConversionEventsMethod;
|
|
124
|
+
exports.listConversionSourcesMethod = require_sdk_gen.listConversionSourcesMethod;
|
|
125
|
+
exports.listCustomAudiencesMethod = require_sdk_gen.listCustomAudiencesMethod;
|
|
126
|
+
exports.listLeadFormsMethod = require_sdk_gen.listLeadFormsMethod;
|
|
127
|
+
exports.listLeadSyncSubscriptionsMethod = require_sdk_gen.listLeadSyncSubscriptionsMethod;
|
|
128
|
+
exports.listProductFeedUploadsMethod = require_sdk_gen.listProductFeedUploadsMethod;
|
|
129
|
+
exports.listProductFeedsMethod = require_sdk_gen.listProductFeedsMethod;
|
|
130
|
+
exports.mergeCustomAudiencesMethod = require_sdk_gen.mergeCustomAudiencesMethod;
|
|
131
|
+
exports.mergeHeaders = require_sdk_gen.mergeHeaders;
|
|
132
|
+
exports.patchProductFeedProductsMethod = require_sdk_gen.patchProductFeedProductsMethod;
|
|
133
|
+
exports.pauseAdAccountMethod = require_sdk_gen.pauseAdAccountMethod;
|
|
134
|
+
exports.pauseAdGroupMethod = require_sdk_gen.pauseAdGroupMethod;
|
|
135
|
+
exports.pauseAdMethod = require_sdk_gen.pauseAdMethod;
|
|
136
|
+
exports.pauseCampaignMethod = require_sdk_gen.pauseCampaignMethod;
|
|
137
|
+
exports.postConversionInsightsMethod = require_sdk_gen.postConversionInsightsMethod;
|
|
138
|
+
exports.postProductFeedSftpAccessActivateMethod = require_sdk_gen.postProductFeedSftpAccessActivateMethod;
|
|
139
|
+
exports.postProductFeedSftpAccessMethod = require_sdk_gen.postProductFeedSftpAccessMethod;
|
|
140
|
+
exports.postProductFeedSftpAccessPauseMethod = require_sdk_gen.postProductFeedSftpAccessPauseMethod;
|
|
141
|
+
exports.previewBusinessAgentMethod = require_sdk_gen.previewBusinessAgentMethod;
|
|
142
|
+
exports.publishBusinessAgentMethod = require_sdk_gen.publishBusinessAgentMethod;
|
|
143
|
+
exports.publishLeadFormMethod = require_sdk_gen.publishLeadFormMethod;
|
|
144
|
+
exports.queryProductFeedProductsMethod = require_sdk_gen.queryProductFeedProductsMethod;
|
|
145
|
+
exports.removeCustomAudienceMembersMethod = require_sdk_gen.removeCustomAudienceMembersMethod;
|
|
146
|
+
exports.replaceCustomAudienceMembersMethod = require_sdk_gen.replaceCustomAudienceMembersMethod;
|
|
147
|
+
exports.serializeQueryKeyValue = serializeQueryKeyValue;
|
|
148
|
+
exports.updateAdAccountMethod = require_sdk_gen.updateAdAccountMethod;
|
|
149
|
+
exports.updateAdAccountNegativeKeywordsMethod = require_sdk_gen.updateAdAccountNegativeKeywordsMethod;
|
|
150
|
+
exports.updateAdAccountSpendLimitWindowMethod = require_sdk_gen.updateAdAccountSpendLimitWindowMethod;
|
|
151
|
+
exports.updateAdGroupMethod = require_sdk_gen.updateAdGroupMethod;
|
|
152
|
+
exports.updateAdMethod = require_sdk_gen.updateAdMethod;
|
|
153
|
+
exports.updateBusinessAgentMethod = require_sdk_gen.updateBusinessAgentMethod;
|
|
154
|
+
exports.updateCampaignMethod = require_sdk_gen.updateCampaignMethod;
|
|
155
|
+
exports.updateLeadFormMethod = require_sdk_gen.updateLeadFormMethod;
|
|
156
|
+
exports.uploadBlobMethod = require_sdk_gen.uploadBlobMethod;
|
|
157
|
+
exports.uploadImageMethod = require_sdk_gen.uploadImageMethod;
|
|
158
|
+
exports.urlSearchParamsBodySerializer = require_sdk_gen.urlSearchParamsBodySerializer;
|
|
159
|
+
|
|
160
|
+
//# sourceMappingURL=raw.cjs.map
|
package/dist/raw.cjs.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"raw.cjs","names":[],"sources":["../src/generated/core/queryKeySerializer.gen.ts"],"sourcesContent":["// This file is auto-generated by @hey-api/openapi-ts\n\n/**\n * JSON-friendly union that mirrors what Pinia Colada can hash.\n */\nexport type JsonValue =\n null | string | number | boolean | JsonValue[] | { [key: string]: JsonValue }\n\n/**\n * Replacer that converts non-JSON values (bigint, Date, etc.) to safe substitutes.\n */\nexport const queryKeyJsonReplacer = (\n _key: string,\n value: unknown,\n): unknown | undefined => {\n if (\n value === undefined ||\n typeof value === 'function' ||\n typeof value === 'symbol'\n ) {\n return undefined\n }\n if (typeof value === 'bigint') {\n return value.toString()\n }\n if (value instanceof Date) {\n return value.toISOString()\n }\n return value\n}\n\n/**\n * Safely stringifies a value and parses it back into a JsonValue.\n */\nexport const stringifyToJsonValue = (input: unknown): JsonValue | undefined => {\n try {\n const json = JSON.stringify(input, queryKeyJsonReplacer)\n if (json === undefined) {\n return undefined\n }\n return JSON.parse(json) as JsonValue\n } catch {\n return undefined\n }\n}\n\n/**\n * Detects plain objects (including objects with a null prototype).\n */\nconst isPlainObject = (value: unknown): value is Record<string, unknown> => {\n if (value === null || typeof value !== 'object') {\n return false\n }\n const prototype = Object.getPrototypeOf(value as object)\n return prototype === Object.prototype || prototype === null\n}\n\n/**\n * Turns URLSearchParams into a sorted JSON object for deterministic keys.\n */\nconst serializeSearchParams = (params: URLSearchParams): JsonValue => {\n const entries = Array.from(params.entries()).sort(([a], [b]) =>\n a.localeCompare(b),\n )\n const result: Record<string, JsonValue> = {}\n\n for (const [key, value] of entries) {\n const existing = result[key]\n if (existing === undefined) {\n result[key] = value\n continue\n }\n\n if (Array.isArray(existing)) {\n ;(existing as string[]).push(value)\n } else {\n result[key] = [existing, value]\n }\n }\n\n return result\n}\n\n/**\n * Normalizes any accepted value into a JSON-friendly shape for query keys.\n */\nexport const serializeQueryKeyValue = (\n value: unknown,\n): JsonValue | undefined => {\n if (value === null) {\n return null\n }\n\n if (\n typeof value === 'string' ||\n typeof value === 'number' ||\n typeof value === 'boolean'\n ) {\n return value\n }\n\n if (\n value === undefined ||\n typeof value === 'function' ||\n typeof value === 'symbol'\n ) {\n return undefined\n }\n\n if (typeof value === 'bigint') {\n return value.toString()\n }\n\n if (value instanceof Date) {\n return value.toISOString()\n }\n\n if (Array.isArray(value)) {\n return stringifyToJsonValue(value)\n }\n\n if (\n typeof URLSearchParams !== 'undefined' &&\n value instanceof URLSearchParams\n ) {\n return serializeSearchParams(value)\n }\n\n if (isPlainObject(value)) {\n return stringifyToJsonValue(value)\n }\n\n return undefined\n}\n"],"mappings":";;;;;;AAWA,MAAa,wBACX,MACA,UACwB;CACxB,IACE,UAAU,KAAA,KACV,OAAO,UAAU,cACjB,OAAO,UAAU,UAEjB;CAEF,IAAI,OAAO,UAAU,UACnB,OAAO,MAAM,SAAS;CAExB,IAAI,iBAAiB,MACnB,OAAO,MAAM,YAAY;CAE3B,OAAO;AACT;;;;AAKA,MAAa,wBAAwB,UAA0C;CAC7E,IAAI;EACF,MAAM,OAAO,KAAK,UAAU,OAAO,oBAAoB;EACvD,IAAI,SAAS,KAAA,GACX;EAEF,OAAO,KAAK,MAAM,IAAI;CACxB,QAAQ;EACN;CACF;AACF;;;;AAKA,MAAM,iBAAiB,UAAqD;CAC1E,IAAI,UAAU,QAAQ,OAAO,UAAU,UACrC,OAAO;CAET,MAAM,YAAY,OAAO,eAAe,KAAe;CACvD,OAAO,cAAc,OAAO,aAAa,cAAc;AACzD;;;;AAKA,MAAM,yBAAyB,WAAuC;CACpE,MAAM,UAAU,MAAM,KAAK,OAAO,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OACvD,EAAE,cAAc,CAAC,CACnB;CACA,MAAM,SAAoC,CAAC;CAE3C,KAAK,MAAM,CAAC,KAAK,UAAU,SAAS;EAClC,MAAM,WAAW,OAAO;EACxB,IAAI,aAAa,KAAA,GAAW;GAC1B,OAAO,OAAO;GACd;EACF;EAEA,IAAI,MAAM,QAAQ,QAAQ,GACvB,SAAuB,KAAK,KAAK;OAElC,OAAO,OAAO,CAAC,UAAU,KAAK;CAElC;CAEA,OAAO;AACT;;;;AAKA,MAAa,0BACX,UAC0B;CAC1B,IAAI,UAAU,MACZ,OAAO;CAGT,IACE,OAAO,UAAU,YACjB,OAAO,UAAU,YACjB,OAAO,UAAU,WAEjB,OAAO;CAGT,IACE,UAAU,KAAA,KACV,OAAO,UAAU,cACjB,OAAO,UAAU,UAEjB;CAGF,IAAI,OAAO,UAAU,UACnB,OAAO,MAAM,SAAS;CAGxB,IAAI,iBAAiB,MACnB,OAAO,MAAM,YAAY;CAG3B,IAAI,MAAM,QAAQ,KAAK,GACrB,OAAO,qBAAqB,KAAK;CAGnC,IACE,OAAO,oBAAoB,eAC3B,iBAAiB,iBAEjB,OAAO,sBAAsB,KAAK;CAGpC,IAAI,cAAc,KAAK,GACrB,OAAO,qBAAqB,KAAK;AAIrC"}
|