@wix/auto_sdk_containers_projects 1.0.2 → 1.0.4

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.
@@ -31,6 +31,7 @@ __export(index_exports, {
31
31
  listProjects: () => listProjects4,
32
32
  regenerateProjectIcon: () => regenerateProjectIcon4,
33
33
  regenerateProjectName: () => regenerateProjectName4,
34
+ restoreRelease: () => restoreRelease4,
34
35
  resumeProject: () => resumeProject4,
35
36
  saveProjectDesign: () => saveProjectDesign4,
36
37
  updateProject: () => updateProject4
@@ -284,6 +285,33 @@ function saveProjectDesign(payload) {
284
285
  }
285
286
  return __saveProjectDesign;
286
287
  }
288
+ function restoreRelease(payload) {
289
+ function __restoreRelease({ host }) {
290
+ const metadata = {
291
+ entityFqdn: "wix.containers.projects.v1.project",
292
+ method: "POST",
293
+ methodFqn: "wix.containers.projects.v1.ContainersProjects.RestoreRelease",
294
+ packageName: PACKAGE_NAME,
295
+ migrationOptions: {
296
+ optInTransformResponse: true
297
+ },
298
+ url: resolveWixContainersProjectsV1ContainersProjectsUrl({
299
+ protoPath: "/v1/projects/{projectId}/restore-release",
300
+ data: payload,
301
+ host
302
+ }),
303
+ data: payload,
304
+ transformResponse: (payload2) => (0, import_transform_paths.transformPaths)(payload2, [
305
+ {
306
+ transformFn: import_timestamp2.transformRESTTimestampToSDKTimestamp,
307
+ paths: TRANSFORM_PATHS_0
308
+ }
309
+ ])
310
+ };
311
+ return metadata;
312
+ }
313
+ return __restoreRelease;
314
+ }
287
315
  function listProjects(payload) {
288
316
  function __listProjects({ host }) {
289
317
  const metadata = {
@@ -540,7 +568,8 @@ async function saveProjectDesign2(projectId, baseReleaseId, options) {
540
568
  baseReleaseId,
541
569
  tokensJson: options?.tokensJson,
542
570
  himalayaControlToken: options?.himalayaControlToken,
543
- canonicalApp: options?.canonicalApp
571
+ canonicalApp: options?.canonicalApp,
572
+ conversationId: options?.conversationId
544
573
  });
545
574
  const reqOpts = saveProjectDesign(payload);
546
575
  sideEffects?.onSiteCall?.();
@@ -558,7 +587,8 @@ async function saveProjectDesign2(projectId, baseReleaseId, options) {
558
587
  baseReleaseId: "$[1]",
559
588
  tokensJson: "$[2].tokensJson",
560
589
  himalayaControlToken: "$[2].himalayaControlToken",
561
- canonicalApp: "$[2].canonicalApp"
590
+ canonicalApp: "$[2].canonicalApp",
591
+ conversationId: "$[2].conversationId"
562
592
  },
563
593
  singleArgumentUnchanged: false
564
594
  },
@@ -568,6 +598,39 @@ async function saveProjectDesign2(projectId, baseReleaseId, options) {
568
598
  throw transformedError;
569
599
  }
570
600
  }
601
+ async function restoreRelease2(projectId, releaseId, options) {
602
+ const { httpClient, sideEffects } = arguments[3];
603
+ const payload = (0, import_rename_all_nested_keys.renameKeysFromSDKRequestToRESTRequest)({
604
+ projectId,
605
+ releaseId,
606
+ himalayaControlToken: options?.himalayaControlToken,
607
+ conversationId: options?.conversationId
608
+ });
609
+ const reqOpts = restoreRelease(payload);
610
+ sideEffects?.onSiteCall?.();
611
+ try {
612
+ const result = await httpClient.request(reqOpts);
613
+ sideEffects?.onSuccess?.(result);
614
+ return (0, import_rename_all_nested_keys.renameKeysFromRESTResponseToSDKResponse)(result.data);
615
+ } catch (err) {
616
+ const transformedError = (0, import_transform_error.transformError)(
617
+ err,
618
+ {
619
+ spreadPathsToArguments: {},
620
+ explicitPathsToArguments: {
621
+ projectId: "$[0]",
622
+ releaseId: "$[1]",
623
+ himalayaControlToken: "$[2].himalayaControlToken",
624
+ conversationId: "$[2].conversationId"
625
+ },
626
+ singleArgumentUnchanged: false
627
+ },
628
+ ["projectId", "releaseId", "options"]
629
+ );
630
+ sideEffects?.onError?.(err);
631
+ throw transformedError;
632
+ }
633
+ }
571
634
  async function listProjects2(options) {
572
635
  const { httpClient, sideEffects } = arguments[1];
573
636
  const payload = (0, import_rename_all_nested_keys.renameKeysFromSDKRequestToRESTRequest)({
@@ -681,6 +744,15 @@ function saveProjectDesign3(httpClient) {
681
744
  { httpClient }
682
745
  );
683
746
  }
747
+ function restoreRelease3(httpClient) {
748
+ return (projectId, releaseId, options) => restoreRelease2(
749
+ projectId,
750
+ releaseId,
751
+ options,
752
+ // @ts-ignore
753
+ { httpClient }
754
+ );
755
+ }
684
756
  function listProjects3(httpClient) {
685
757
  return (options) => listProjects2(
686
758
  options,
@@ -706,6 +778,7 @@ var resumeProject4 = /* @__PURE__ */ (0, import_rest_modules3.createRESTModule)(
706
778
  var regenerateProjectName4 = /* @__PURE__ */ (0, import_rest_modules3.createRESTModule)(regenerateProjectName3);
707
779
  var regenerateProjectIcon4 = /* @__PURE__ */ (0, import_rest_modules3.createRESTModule)(regenerateProjectIcon3);
708
780
  var saveProjectDesign4 = /* @__PURE__ */ (0, import_rest_modules3.createRESTModule)(saveProjectDesign3);
781
+ var restoreRelease4 = /* @__PURE__ */ (0, import_rest_modules3.createRESTModule)(restoreRelease3);
709
782
  var listProjects4 = /* @__PURE__ */ (0, import_rest_modules3.createRESTModule)(listProjects3);
710
783
  var getHimalayaAuthorization4 = /* @__PURE__ */ (0, import_rest_modules3.createRESTModule)(getHimalayaAuthorization3);
711
784
  // Annotate the CommonJS export names for ESM import in node:
@@ -721,6 +794,7 @@ var getHimalayaAuthorization4 = /* @__PURE__ */ (0, import_rest_modules3.createR
721
794
  listProjects,
722
795
  regenerateProjectIcon,
723
796
  regenerateProjectName,
797
+ restoreRelease,
724
798
  resumeProject,
725
799
  saveProjectDesign,
726
800
  updateProject
@@ -1 +1 @@
1
- {"version":3,"sources":["../../index.ts","../../src/containers-projects-v1-project-projects.universal.ts","../../src/containers-projects-v1-project-projects.http.ts","../../src/containers-projects-v1-project-projects.public.ts","../../src/containers-projects-v1-project-projects.context.ts"],"sourcesContent":["export * from './src/containers-projects-v1-project-projects.context.js';\n","import { transformError as sdkTransformError } from '@wix/sdk-runtime/transform-error';\nimport {\n renameKeysFromSDKRequestToRESTRequest,\n renameKeysFromRESTResponseToSDKResponse,\n} from '@wix/sdk-runtime/rename-all-nested-keys';\nimport { HttpClient, NonNullablePaths } from '@wix/sdk-types';\nimport * as ambassadorWixContainersProjectsV1Project from './containers-projects-v1-project-projects.http.js';\n\nexport interface Project {\n /**\n * Project ID.\n * @format GUID\n * @readonly\n */\n _id?: string | null;\n /**\n * Display name for the project.\n * @maxLength 200\n */\n name?: string;\n /** Current status of the project. */\n status?: ProjectStatusWithLiterals;\n /**\n * ID of the template used to create this project.\n * @format GUID\n * @immutable\n */\n templateId?: string | null;\n /**\n * ID of the git-code-store project (and backing dev-center app) for this project. Set on creation.\n * @format GUID\n * @readonly\n */\n codeStoreProjectId?: string | null;\n /**\n * The user id of the owner of this project\n * @format GUID\n * @readonly\n */\n ownerUserId?: string | null;\n /**\n * Revision number, which increments by 1 each time the Project is updated.\n * @readonly\n */\n revision?: string | null;\n /**\n * Date and time the Project was created.\n * @readonly\n */\n _createdDate?: Date | null;\n /**\n * Date and time the Project was last updated.\n * @readonly\n */\n _updatedDate?: Date | null;\n /**\n * Transient lock marking that a sandbox is currently being created for this project.\n * Used to serialize concurrent dev-machine creation; liveness of the sandbox itself is resolved via ListSandboxes.\n * @readonly\n */\n sandboxStatus?: SandboxStatusWithLiterals;\n /**\n * Meta site IDs (MSIDs) of the Wix sites this project is related to.\n * Optional — a project is not required to be tied to a site; may relate to many sites.\n * Preserve the deployed input contract; see containers-projects/SDK_COMPATIBILITY.md.\n * @format GUID\n */\n metaSiteIds?: string[];\n /**\n * Platform this project targets (iOS/Android). Supplied by the client at creation; immutable after.\n * @immutable\n */\n platform?: PlatformWithLiterals;\n /**\n * Optional app icon URL supplied by the client from Wix Media Manager.\n * @maxLength 2000\n */\n appIconUrl?: string | null;\n}\n\nexport enum ProjectStatus {\n /** Project created; client (via containers-plans) is doing most of the work. */\n PLANNING = 'PLANNING',\n /** Generation job created; project moves onward to machine startup. */\n BUILDING = 'BUILDING',\n /** Plan finalized; project is about to create the initial generation job. */\n PLAN_READY = 'PLAN_READY',\n}\n\n/** @enumType */\nexport type ProjectStatusWithLiterals =\n | ProjectStatus\n | 'PLANNING'\n | 'BUILDING'\n | 'PLAN_READY';\n\nexport enum SandboxStatus {\n /** No sandbox creation in progress. */\n NONE = 'NONE',\n /** A caller is currently creating a sandbox for this project (creation lock held). */\n CREATING = 'CREATING',\n}\n\n/** @enumType */\nexport type SandboxStatusWithLiterals = SandboxStatus | 'NONE' | 'CREATING';\n\nexport enum Platform {\n IOS = 'IOS',\n ANDROID = 'ANDROID',\n /**\n * Himalaya Mobile (Wix SDUI/OTA content package): mobile apps built headlessly on the\n * on-demand remote machine via the himi CLI, instead of native iOS/Android pods.\n */\n HIMALAYA_MOBILE = 'HIMALAYA_MOBILE',\n}\n\n/** @enumType */\nexport type PlatformWithLiterals =\n | Platform\n | 'IOS'\n | 'ANDROID'\n | 'HIMALAYA_MOBILE';\n\nexport interface ProjectStartRequested {\n /**\n * ID of the Project to start.\n * @format GUID\n */\n projectId?: string;\n}\n\nexport interface ProjectResumeRequested {\n /**\n * ID of the Project to resume.\n * @format GUID\n */\n projectId?: string;\n}\n\n/**\n * Emitted when the project transitions PLANNING -> PLAN_READY (on plan finalization). The project\n * self-consumes this event to start the app generation: mint the agent session, attach it to the\n * finalized conversation, create the initial generation job, and move to BUILDING. The finalized\n * plan is read back from containers-plans by project id when the job is built.\n */\nexport interface ProjectPlanReady {\n /**\n * ID of the Project whose plan is ready.\n * @format GUID\n */\n projectId?: string;\n /**\n * ID of the conversation that led to this plan being finalized. The minted agent session id is\n * attached to this conversation so the build can --resume it. Propagated from PlanFinalized.\n * @format GUID\n */\n conversationId?: string;\n}\n\nexport interface CreateAgentSessionRequest {\n /**\n * ID of the Project to create an agent session for.\n * @format GUID\n */\n projectId?: string;\n}\n\nexport interface CreateAgentSessionResponse {\n /**\n * Agent session ID materialized for the Project.\n * @format GUID\n */\n agentSessionId?: string;\n}\n\nexport interface RefreshAgentSiteTokenRequest {\n /**\n * Exact project/job tuple whose initiating user's site token should be re-minted.\n * @format GUID\n */\n projectId?: string;\n /**\n * Job whose persisted initiating user and MetaSite provenance must be revalidated.\n * @format GUID\n */\n jobId?: string;\n}\n\nexport interface RefreshAgentSiteTokenResponse {\n /**\n * A freshly minted site-scoped access token for the project owner. Sensitive credential material:\n * marked pii so the platform redacts it from request/response logging (never log it in app code either).\n * maxLength matches the sibling containers-project-versions token fields (4096) — ample for the\n * oauth2-ng user access token, and required by the string-validation standard.\n * @maxLength 4096\n */\n accessToken?: string;\n /** Seconds until the returned token expires, as reported by oauth2-ng. */\n expiresIn?: string;\n /** Version of the job-bound authorization response contract. */\n authorizationVersion?: number;\n /**\n * The project authorized by this refresh.\n * @format GUID\n */\n projectId?: string;\n /**\n * The job authorized by this refresh.\n * @format GUID\n */\n jobId?: string;\n /**\n * Trusted MetaSite captured when the job was created.\n * @format GUID\n */\n metaSiteId?: string;\n /**\n * Trusted dashboard USER captured when the job was created.\n * @format GUID\n */\n initiatingUserId?: string;\n}\n\nexport interface DomainEvent extends DomainEventBodyOneOf {\n createdEvent?: EntityCreatedEvent;\n updatedEvent?: EntityUpdatedEvent;\n deletedEvent?: EntityDeletedEvent;\n actionEvent?: ActionEvent;\n /** Event ID. With this ID you can easily spot duplicated events and ignore them. */\n _id?: string;\n /**\n * Fully Qualified Domain Name of an entity. This is a unique identifier assigned to the API main business entities.\n * For example, `wix.stores.catalog.product`, `wix.bookings.session`, `wix.payments.transaction`.\n */\n entityFqdn?: string;\n /**\n * Event action name, placed at the top level to make it easier for users to dispatch messages.\n * For example: `created`/`updated`/`deleted`/`started`/`completed`/`email_opened`.\n */\n slug?: string;\n /** ID of the entity associated with the event. */\n entityId?: string;\n /** Event timestamp in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format and UTC time. For example, `2020-04-26T13:57:50.699Z`. */\n eventTime?: Date | null;\n /**\n * Whether the event was triggered as a result of a privacy regulation application\n * (for example, GDPR).\n */\n triggeredByAnonymizeRequest?: boolean | null;\n /** If present, indicates the action that triggered the event. */\n originatedFrom?: string | null;\n /**\n * A sequence number that indicates the order of updates to an entity. For example, if an entity was updated at `16:00` and then again at `16:01`, the second update will always have a higher sequence number.\n * You can use this number to make sure you're handling updates in the right order. Just save the latest sequence number on your end and compare it to the one in each new message. If the new message has an older (lower) number, you can safely ignore it.\n */\n entityEventSequence?: string | null;\n}\n\n/** @oneof */\nexport interface DomainEventBodyOneOf {\n createdEvent?: EntityCreatedEvent;\n updatedEvent?: EntityUpdatedEvent;\n deletedEvent?: EntityDeletedEvent;\n actionEvent?: ActionEvent;\n}\n\nexport interface EntityCreatedEvent {\n entity?: string;\n}\n\nexport interface RestoreInfo {\n deletedDate?: Date | null;\n}\n\nexport interface EntityUpdatedEvent {\n /**\n * Since platformized APIs only expose PATCH and not PUT we can't assume that the fields sent from the client are the actual diff.\n * This means that to generate a list of changed fields (as opposed to sent fields) one needs to traverse both objects.\n * We don't want to impose this on all developers and so we leave this traversal to the notification recipients which need it.\n */\n currentEntity?: string;\n}\n\nexport interface EntityDeletedEvent {\n /** Entity that was deleted. */\n deletedEntity?: string | null;\n}\n\nexport interface ActionEvent {\n body?: string;\n}\n\nexport interface MessageEnvelope {\n /**\n * App instance ID.\n * @format GUID\n */\n instanceId?: string | null;\n /**\n * Event type.\n * @maxLength 150\n */\n eventType?: string;\n /** The identification type and identity data. */\n identity?: IdentificationData;\n /** Stringify payload. */\n data?: string;\n /** Details related to the account */\n accountInfo?: AccountInfo;\n}\n\nexport interface IdentificationData extends IdentificationDataIdOneOf {\n /**\n * ID of a site visitor that has not logged in to the site.\n * @format GUID\n */\n anonymousVisitorId?: string;\n /**\n * ID of a site visitor that has logged in to the site.\n * @format GUID\n */\n memberId?: string;\n /**\n * ID of a Wix user (site owner, contributor, etc.).\n * @format GUID\n */\n wixUserId?: string;\n /**\n * ID of an app.\n * @format GUID\n */\n appId?: string;\n /** @readonly */\n identityType?: WebhookIdentityTypeWithLiterals;\n}\n\n/** @oneof */\nexport interface IdentificationDataIdOneOf {\n /**\n * ID of a site visitor that has not logged in to the site.\n * @format GUID\n */\n anonymousVisitorId?: string;\n /**\n * ID of a site visitor that has logged in to the site.\n * @format GUID\n */\n memberId?: string;\n /**\n * ID of a Wix user (site owner, contributor, etc.).\n * @format GUID\n */\n wixUserId?: string;\n /**\n * ID of an app.\n * @format GUID\n */\n appId?: string;\n}\n\nexport enum WebhookIdentityType {\n UNKNOWN = 'UNKNOWN',\n ANONYMOUS_VISITOR = 'ANONYMOUS_VISITOR',\n MEMBER = 'MEMBER',\n WIX_USER = 'WIX_USER',\n APP = 'APP',\n}\n\n/** @enumType */\nexport type WebhookIdentityTypeWithLiterals =\n | WebhookIdentityType\n | 'UNKNOWN'\n | 'ANONYMOUS_VISITOR'\n | 'MEMBER'\n | 'WIX_USER'\n | 'APP';\n\nexport interface AccountInfo {\n /**\n * ID of the Wix account associated with the event.\n * @format GUID\n */\n accountId?: string | null;\n /**\n * ID of the parent Wix account. Only included when accountId belongs to a child account.\n * @format GUID\n */\n parentAccountId?: string | null;\n /**\n * ID of the Wix site associated with the event. Only included when the event is tied to a specific site.\n * @format GUID\n */\n siteId?: string | null;\n}\n\nexport interface CreateProjectRequest {\n /** Project to be created. */\n project: Project;\n}\n\nexport interface CreateProjectResponse {\n /** The created Project. */\n project?: Project;\n}\n\nexport interface GetProjectRequest {\n /**\n * ID of the Project to retrieve.\n * @format GUID\n */\n projectId: string;\n}\n\nexport interface GetProjectResponse {\n /** The requested Project. */\n project?: Project;\n}\n\nexport interface UpdateProjectRequest {\n /** Project to be updated, may be partial. */\n project: Project;\n /**\n * Set of fields to update.\n * @internal\n */\n fieldMask?: string[];\n}\n\nexport interface UpdateProjectResponse {\n /** Updated Project. */\n project?: Project;\n}\n\nexport interface DeleteProjectRequest {\n /**\n * Id of the Project to delete.\n * @format GUID\n */\n projectId: string;\n}\n\nexport interface DeleteProjectResponse {}\n\nexport interface StartProjectRequest {\n /**\n * ID of the Project to start.\n * @format GUID\n */\n projectId?: string;\n}\n\nexport interface StartProjectResponse {\n /** The Project for which start was requested. */\n project?: Project;\n}\n\nexport interface ResumeProjectRequest {\n /**\n * ID of the Project to resume.\n * @format GUID\n */\n projectId: string;\n}\n\nexport interface ResumeProjectResponse {\n /** The Project for which resume was requested. */\n project?: Project;\n}\n\nexport interface RegenerateProjectNameRequest {\n /**\n * ID of the Project to generate a new name for.\n * @format GUID\n */\n projectId: string;\n /**\n * The user's free-text renaming instruction, passed to the name-generation prompt.\n * @maxLength 4000\n */\n prompt: string;\n}\n\nexport interface RegenerateProjectNameResponse {\n /**\n * The generated display name, at most 30 characters. Not persisted.\n * @maxLength 30\n */\n name?: string;\n}\n\nexport interface RegenerateProjectIconRequest {\n /**\n * ID of the Project to generate a new icon for.\n * @format GUID\n */\n projectId: string;\n /**\n * The user's free-text icon instruction, passed to the icon-generation prompt.\n * @maxLength 4000\n */\n prompt: string;\n}\n\nexport interface RegenerateProjectIconResponse {\n /**\n * The generated icon URL. Not persisted.\n * @format WEB_URL\n */\n iconUrl?: string;\n}\n\nexport interface ListProjectsForCurrentUserRequest {\n /** Cursor paging options. */\n paging?: CursorPaging;\n}\n\nexport interface CursorPaging {\n /**\n * Maximum number of items to return in the results.\n * @max 100\n */\n limit?: number | null;\n /**\n * Pointer to the next or previous page in the list of results.\n *\n * Pass the relevant cursor token from the `pagingMetadata` object in the previous call's response.\n * Not relevant for the first request.\n * @maxLength 16000\n */\n cursor?: string | null;\n}\n\nexport interface ListProjectsForCurrentUserResponse {\n /** Projects owned by the current user. */\n projects?: Project[];\n /** Paging metadata for cursor-based pagination. */\n pagingMetadata?: CursorPagingMetadata;\n}\n\nexport interface CursorPagingMetadata {\n /** Number of items returned in current page. */\n count?: number | null;\n /** Cursor strings that point to the next page, previous page, or both. */\n cursors?: Cursors;\n /**\n * Whether there are more pages to retrieve following the current page.\n *\n * + `true`: Another page of results can be retrieved.\n * + `false`: This is the last page.\n */\n hasNext?: boolean | null;\n}\n\nexport interface Cursors {\n /**\n * Cursor string pointing to the next page in the list of results.\n * @maxLength 16000\n */\n next?: string | null;\n /**\n * Cursor pointing to the previous page in the list of results.\n * @maxLength 16000\n */\n prev?: string | null;\n}\n\nexport interface SaveProjectDesignRequest {\n /**\n * Project whose design is being saved. The caller must own it.\n * @format GUID\n */\n projectId: string;\n /**\n * The Himalaya release ID currently displayed by the client. The saved draft branches from\n * exactly this release, even when a newer release exists for the app.\n * @maxLength 100\n */\n baseReleaseId: string;\n /**\n * The complete edited design-token document, as a JSON object string — not a flattened set of\n * preview overrides. The caller is responsible for preserving unknown groups and light/dark\n * values it did not change.\n * @maxLength 65536\n */\n tokensJson: string;\n /**\n * Short-lived, app-scoped Himalaya control credential the client obtained from Himalaya's owner\n * embed-token endpoint. Forwarded to Himalaya for this call only — never logged, persisted, or\n * echoed back in any response, error, or event.\n *\n * The app this call writes to is NOT taken from this request. It is composed from the owner\n * prefix this credential carries plus project_id; see HimalayaAppSlug.\n * @maxLength 4096\n */\n himalayaControlToken: string;\n /**\n * Client assertion of the canonical app returned by authenticated Himalaya lookup. Catalyst\n * resolves and validates the same value; it is never used as an unchecked write target.\n * @maxLength 200\n */\n canonicalApp?: string;\n}\n\nexport interface SaveProjectDesignResponse {\n /**\n * The saved draft release. Always a draft, so the app's live release is untouched.\n * @maxLength 100\n */\n himalayaReleaseId?: string;\n /**\n * Short-lived credential for previewing the saved draft release. Response-only: never persisted\n * or placed in a preview URL by this service.\n * @maxLength 4096\n */\n previewToken?: string;\n /** When preview_token expires. */\n previewTokenExpiresAt?: Date | null;\n}\n\nexport interface ListProjectsRequest {\n /** Cursor paging options. */\n paging?: CursorPaging;\n}\n\nexport interface ListProjectsResponse {\n /** Projects in the current site. */\n projects?: Project[];\n /** Paging metadata for cursor-based pagination. */\n pagingMetadata?: CursorPagingMetadata;\n}\n\nexport interface GetHimalayaAuthorizationRequest {\n /**\n * Site-tenanted Containers project being authorized.\n * @format GUID\n */\n projectId: string;\n}\n\nexport interface GetHimalayaAuthorizationResponse {\n /** Version of the authorization capability contract. */\n authorizationVersion?: number;\n /**\n * Trusted MetaSite selected from request identity context.\n * @format GUID\n */\n metaSiteId?: string;\n /**\n * Site-tenanted Containers project authorized by the lookup.\n * @format GUID\n */\n projectId?: string;\n /**\n * Verified canonical Himalaya app slug.\n * @maxLength 200\n */\n canonicalApp?: string;\n /** Whether a fresh worker launch is currently authorized. */\n workerLaunch?: boolean;\n /** Whether a fresh design save is currently authorized. */\n saveDesign?: boolean;\n}\n\n/**\n * Creates a new Project from a template.\n * Looks up the template to find its backing source code, creates a dev-center app,\n * registers an AppProject, clones the template's git repository into a new\n * code-store project, and persists the Project.\n * @param project - Project to be created.\n * @internal\n * @documentationMaturity preview\n * @requiredField project\n * @requiredField project.platform\n * @requiredField project.templateId\n * @permissionId containers:projects:v1:project:create_project\n * @returns The created Project.\n * @fqn wix.containers.projects.v1.ContainersProjects.CreateProject\n */\nexport async function createProject(\n project: NonNullablePaths<Project, `platform` | `templateId`, 0>\n): Promise<\n NonNullablePaths<\n Project,\n `name` | `status` | `sandboxStatus` | `metaSiteIds` | `platform`,\n 0\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({ project: project });\n\n const reqOpts =\n ambassadorWixContainersProjectsV1Project.createProject(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)?.project!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { project: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['project']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Retrieves a Project by ID.\n * @param projectId - ID of the Project to retrieve.\n * @internal\n * @documentationMaturity preview\n * @requiredField projectId\n * @permissionId containers:projects:v1:project:get_project\n * @returns The requested Project.\n * @fqn wix.containers.projects.v1.ContainersProjects.GetProject\n */\nexport async function getProject(\n projectId: string\n): Promise<\n NonNullablePaths<\n Project,\n `name` | `status` | `sandboxStatus` | `metaSiteIds` | `platform`,\n 0\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n projectId: projectId,\n });\n\n const reqOpts = ambassadorWixContainersProjectsV1Project.getProject(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)?.project!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { projectId: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['projectId']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Updates an existing Project.\n * @param _id - Project ID.\n * @internal\n * @documentationMaturity preview\n * @requiredField _id\n * @requiredField project\n * @requiredField project.revision\n * @permissionId containers:projects:v1:project:update_project\n * @returns Updated Project.\n * @fqn wix.containers.projects.v1.ContainersProjects.UpdateProject\n */\nexport async function updateProject(\n _id: string,\n project: NonNullablePaths<UpdateProject, `revision`, 0>\n): Promise<\n NonNullablePaths<\n Project,\n `name` | `status` | `sandboxStatus` | `metaSiteIds` | `platform`,\n 0\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[2] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n project: { ...project, id: _id },\n });\n\n const reqOpts =\n ambassadorWixContainersProjectsV1Project.updateProject(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)?.project!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: { project: '$[1]' },\n explicitPathsToArguments: { 'project.id': '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['_id', 'project']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\nexport interface UpdateProject {\n /**\n * Project ID.\n * @format GUID\n * @readonly\n */\n _id?: string | null;\n /**\n * Display name for the project.\n * @maxLength 200\n */\n name?: string;\n /** Current status of the project. */\n status?: ProjectStatusWithLiterals;\n /**\n * ID of the template used to create this project.\n * @format GUID\n * @immutable\n */\n templateId?: string | null;\n /**\n * ID of the git-code-store project (and backing dev-center app) for this project. Set on creation.\n * @format GUID\n * @readonly\n */\n codeStoreProjectId?: string | null;\n /**\n * The user id of the owner of this project\n * @format GUID\n * @readonly\n */\n ownerUserId?: string | null;\n /**\n * Revision number, which increments by 1 each time the Project is updated.\n * @readonly\n */\n revision?: string | null;\n /**\n * Date and time the Project was created.\n * @readonly\n */\n _createdDate?: Date | null;\n /**\n * Date and time the Project was last updated.\n * @readonly\n */\n _updatedDate?: Date | null;\n /**\n * Transient lock marking that a sandbox is currently being created for this project.\n * Used to serialize concurrent dev-machine creation; liveness of the sandbox itself is resolved via ListSandboxes.\n * @readonly\n */\n sandboxStatus?: SandboxStatusWithLiterals;\n /**\n * Meta site IDs (MSIDs) of the Wix sites this project is related to.\n * Optional — a project is not required to be tied to a site; may relate to many sites.\n * Preserve the deployed input contract; see containers-projects/SDK_COMPATIBILITY.md.\n * @format GUID\n */\n metaSiteIds?: string[];\n /**\n * Platform this project targets (iOS/Android). Supplied by the client at creation; immutable after.\n * @immutable\n */\n platform?: PlatformWithLiterals;\n /**\n * Optional app icon URL supplied by the client from Wix Media Manager.\n * @maxLength 2000\n */\n appIconUrl?: string | null;\n}\n\n/**\n * Deletes a Project.\n * @param projectId - Id of the Project to delete.\n * @internal\n * @documentationMaturity preview\n * @requiredField projectId\n * @permissionId containers:projects:v1:project:delete_project\n * @fqn wix.containers.projects.v1.ContainersProjects.DeleteProject\n */\nexport async function deleteProject(projectId: string): Promise<void> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n projectId: projectId,\n });\n\n const reqOpts =\n ambassadorWixContainersProjectsV1Project.deleteProject(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { projectId: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['projectId']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Requests Project resume by starting or reusing its configured remote machine asynchronously.\n * @param projectId - ID of the Project to resume.\n * @internal\n * @documentationMaturity preview\n * @requiredField projectId\n * @permissionId containers:projects:v1:project:resume_project\n * @fqn wix.containers.projects.v1.ContainersProjects.ResumeProject\n */\nexport async function resumeProject(\n projectId: string\n): Promise<\n NonNullablePaths<\n ResumeProjectResponse,\n | `project.name`\n | `project.status`\n | `project.sandboxStatus`\n | `project.metaSiteIds`\n | `project.platform`,\n 1\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n projectId: projectId,\n });\n\n const reqOpts =\n ambassadorWixContainersProjectsV1Project.resumeProject(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { projectId: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['projectId']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Generates a candidate display name for a Project from a user instruction, via the published\n * \"Regenerate app name\" Prompt Hub prompt. The current name and the project's description are\n * resolved server-side; the caller supplies only the instruction. Does not persist the result —\n * the caller saves an accepted name with UpdateProject.\n * @param projectId - ID of the Project to generate a new name for.\n * @param prompt - The user's free-text renaming instruction, passed to the name-generation prompt.\n * @internal\n * @documentationMaturity preview\n * @requiredField projectId\n * @requiredField prompt\n * @permissionId containers:projects:v1:project:regenerate_project_name\n * @fqn wix.containers.projects.v1.ContainersProjects.RegenerateProjectName\n */\nexport async function regenerateProjectName(\n projectId: string,\n prompt: string\n): Promise<NonNullablePaths<RegenerateProjectNameResponse, `name`, 0>> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[2] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n projectId: projectId,\n prompt: prompt,\n });\n\n const reqOpts =\n ambassadorWixContainersProjectsV1Project.regenerateProjectName(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { projectId: '$[0]', prompt: '$[1]' },\n singleArgumentUnchanged: false,\n },\n ['projectId', 'prompt']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Generates a candidate icon for a Project from a user instruction. The current project name,\n * icon, app description, and brand colors are resolved server-side. Does not persist the result —\n * the caller saves an accepted icon with UpdateProject.\n * @param projectId - ID of the Project to generate a new icon for.\n * @param prompt - The user's free-text icon instruction, passed to the icon-generation prompt.\n * @internal\n * @documentationMaturity preview\n * @requiredField projectId\n * @requiredField prompt\n * @permissionId containers:projects:v1:project:regenerate_project_icon\n * @fqn wix.containers.projects.v1.ContainersProjects.RegenerateProjectIcon\n */\nexport async function regenerateProjectIcon(\n projectId: string,\n prompt: string\n): Promise<NonNullablePaths<RegenerateProjectIconResponse, `iconUrl`, 0>> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[2] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n projectId: projectId,\n prompt: prompt,\n });\n\n const reqOpts =\n ambassadorWixContainersProjectsV1Project.regenerateProjectIcon(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { projectId: '$[0]', prompt: '$[1]' },\n singleArgumentUnchanged: false,\n },\n ['projectId', 'prompt']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Persists a complete design-token document as a new Himalaya draft release, branched from the\n * release the client currently has displayed.\n *\n * Synchronous: the Himalaya write completes before this call returns. Never touches the project's\n * sandbox, runs a build, or activates the app — the saved release stays a draft, so what the live\n * app serves is unaffected. Persists nothing on our side: this creates no entity and posts no\n * chat checkpoint.\n * @param projectId - Project whose design is being saved. The caller must own it.\n * @param baseReleaseId - The Himalaya release ID currently displayed by the client. The saved draft branches from\n * exactly this release, even when a newer release exists for the app.\n * @internal\n * @documentationMaturity preview\n * @requiredField baseReleaseId\n * @requiredField options.himalayaControlToken\n * @requiredField options.tokensJson\n * @requiredField projectId\n * @permissionId containers:projects:v1:project:save_project_design\n * @fqn wix.containers.projects.v1.ContainersProjects.SaveProjectDesign\n */\nexport async function saveProjectDesign(\n projectId: string,\n baseReleaseId: string,\n options?: NonNullablePaths<\n SaveProjectDesignOptions,\n `himalayaControlToken` | `tokensJson`,\n 0\n >\n): Promise<\n NonNullablePaths<\n SaveProjectDesignResponse,\n `himalayaReleaseId` | `previewToken`,\n 0\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[3] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n projectId: projectId,\n baseReleaseId: baseReleaseId,\n tokensJson: options?.tokensJson,\n himalayaControlToken: options?.himalayaControlToken,\n canonicalApp: options?.canonicalApp,\n });\n\n const reqOpts =\n ambassadorWixContainersProjectsV1Project.saveProjectDesign(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: {\n projectId: '$[0]',\n baseReleaseId: '$[1]',\n tokensJson: '$[2].tokensJson',\n himalayaControlToken: '$[2].himalayaControlToken',\n canonicalApp: '$[2].canonicalApp',\n },\n singleArgumentUnchanged: false,\n },\n ['projectId', 'baseReleaseId', 'options']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\nexport interface SaveProjectDesignOptions {\n /**\n * The complete edited design-token document, as a JSON object string — not a flattened set of\n * preview overrides. The caller is responsible for preserving unknown groups and light/dark\n * values it did not change.\n * @maxLength 65536\n */\n tokensJson: string;\n /**\n * Short-lived, app-scoped Himalaya control credential the client obtained from Himalaya's owner\n * embed-token endpoint. Forwarded to Himalaya for this call only — never logged, persisted, or\n * echoed back in any response, error, or event.\n *\n * The app this call writes to is NOT taken from this request. It is composed from the owner\n * prefix this credential carries plus project_id; see HimalayaAppSlug.\n * @maxLength 4096\n */\n himalayaControlToken: string;\n /**\n * Client assertion of the canonical app returned by authenticated Himalaya lookup. Catalyst\n * resolves and validates the same value; it is never used as an unchecked write target.\n * @maxLength 200\n */\n canonicalApp?: string;\n}\n\n/**\n * Lists the Projects of the current site — the MetaSite in the call scope — regardless of who owns\n * them. Anyone with access to the site sees the site's projects; other sites in the same account are\n * separate tenants and never appear here. The dashboard uses this; ListProjectsForCurrentUser stays\n * owner-scoped for callers that still depend on it.\n * @internal\n * @documentationMaturity preview\n * @permissionId containers:projects:v1:project:list_projects\n * @fqn wix.containers.projects.v1.ContainersProjects.ListProjects\n */\nexport async function listProjects(\n options?: ListProjectsOptions\n): Promise<\n NonNullablePaths<\n ListProjectsResponse,\n | `projects`\n | `projects.${number}.name`\n | `projects.${number}.status`\n | `projects.${number}.sandboxStatus`\n | `projects.${number}.platform`,\n 2\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n paging: options?.paging,\n });\n\n const reqOpts =\n ambassadorWixContainersProjectsV1Project.listProjects(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { paging: '$[0].paging' },\n singleArgumentUnchanged: false,\n },\n ['options']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\nexport interface ListProjectsOptions {\n /** Cursor paging options. */\n paging?: CursorPaging;\n}\n\n/**\n * Repeats authenticated Himalaya authorization for the current collaborator. This response is\n * a capability check only; every worker/design mutation performs a fresh check.\n * @param projectId - Site-tenanted Containers project being authorized.\n * @internal\n * @documentationMaturity preview\n * @requiredField projectId\n * @permissionId containers:projects:v1:project:get_himalaya_authorization\n * @fqn wix.containers.projects.v1.ContainersProjects.GetHimalayaAuthorization\n */\nexport async function getHimalayaAuthorization(\n projectId: string\n): Promise<\n NonNullablePaths<\n GetHimalayaAuthorizationResponse,\n | `authorizationVersion`\n | `metaSiteId`\n | `projectId`\n | `canonicalApp`\n | `workerLaunch`\n | `saveDesign`,\n 0\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n projectId: projectId,\n });\n\n const reqOpts =\n ambassadorWixContainersProjectsV1Project.getHimalayaAuthorization(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { projectId: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['projectId']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n","import { toURLSearchParams } from '@wix/sdk-runtime/rest-modules';\nimport { transformSDKTimestampToRESTTimestamp } from '@wix/sdk-runtime/transformations/timestamp';\nimport { transformRESTTimestampToSDKTimestamp } from '@wix/sdk-runtime/transformations/timestamp';\nimport { transformSDKFieldMaskToRESTFieldMask } from '@wix/sdk-runtime/transformations/field-mask';\nimport { transformPaths } from '@wix/sdk-runtime/transformations/transform-paths';\nimport { resolveUrl } from '@wix/sdk-runtime/rest-modules';\nimport { ResolveUrlOpts } from '@wix/sdk-runtime/rest-modules';\nimport { RequestOptionsFactory } from '@wix/sdk-types';\n\nconst TRANSFORM_PATHS_0 = [\n { path: 'project.createdDate' },\n { path: 'project.updatedDate' },\n];\nconst TRANSFORM_PATHS_1 = [{ path: 'fieldMask' }];\nconst TRANSFORM_PATHS_2 = [{ path: 'previewTokenExpiresAt' }];\nconst TRANSFORM_PATHS_3 = [\n { path: 'projects.createdDate' },\n { path: 'projects.updatedDate' },\n];\n\nfunction resolveWixContainersProjectsV1ContainersProjectsUrl(\n opts: Omit<ResolveUrlOpts, 'domainToMappings'>\n) {\n const domainToMappings = {\n 'manage._base_domain_': [\n {\n srcPath: '/_api/containers-projects',\n destPath: '',\n },\n ],\n };\n\n return resolveUrl(Object.assign(opts, { domainToMappings }));\n}\n\nconst PACKAGE_NAME = '@wix/auto_sdk_containers_projects';\n\n/**\n * Creates a new Project from a template.\n * Looks up the template to find its backing source code, creates a dev-center app,\n * registers an AppProject, clones the template's git repository into a new\n * code-store project, and persists the Project.\n */\nexport function createProject(payload: object): RequestOptionsFactory<any> {\n function __createProject({ host }: any) {\n const serializedData = transformPaths(payload, [\n {\n transformFn: transformSDKTimestampToRESTTimestamp,\n paths: TRANSFORM_PATHS_0,\n },\n ]);\n const metadata = {\n entityFqdn: 'wix.containers.projects.v1.project',\n method: 'POST' as any,\n methodFqn: 'wix.containers.projects.v1.ContainersProjects.CreateProject',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixContainersProjectsV1ContainersProjectsUrl({\n protoPath: '/v1/projects',\n data: serializedData,\n host,\n }),\n data: serializedData,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: TRANSFORM_PATHS_0,\n },\n ]),\n };\n\n return metadata;\n }\n\n return __createProject;\n}\n\n/** Retrieves a Project by ID. */\nexport function getProject(payload: object): RequestOptionsFactory<any> {\n function __getProject({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.containers.projects.v1.project',\n method: 'GET' as any,\n methodFqn: 'wix.containers.projects.v1.ContainersProjects.GetProject',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixContainersProjectsV1ContainersProjectsUrl({\n protoPath: '/v1/projects/{projectId}',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload),\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: TRANSFORM_PATHS_0,\n },\n ]),\n };\n\n return metadata;\n }\n\n return __getProject;\n}\n\n/** Updates an existing Project. */\nexport function updateProject(payload: object): RequestOptionsFactory<any> {\n function __updateProject({ host }: any) {\n const serializedData = transformPaths(payload, [\n {\n transformFn: transformSDKFieldMaskToRESTFieldMask,\n paths: TRANSFORM_PATHS_1,\n },\n {\n transformFn: transformSDKTimestampToRESTTimestamp,\n paths: TRANSFORM_PATHS_0,\n },\n ]);\n const metadata = {\n entityFqdn: 'wix.containers.projects.v1.project',\n method: 'PATCH' as any,\n methodFqn: 'wix.containers.projects.v1.ContainersProjects.UpdateProject',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixContainersProjectsV1ContainersProjectsUrl({\n protoPath: '/v1/projects/{project.id}',\n data: serializedData,\n host,\n }),\n data: serializedData,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: TRANSFORM_PATHS_0,\n },\n ]),\n };\n\n return metadata;\n }\n\n return __updateProject;\n}\n\n/** Deletes a Project. */\nexport function deleteProject(payload: object): RequestOptionsFactory<any> {\n function __deleteProject({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.containers.projects.v1.project',\n method: 'DELETE' as any,\n methodFqn: 'wix.containers.projects.v1.ContainersProjects.DeleteProject',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixContainersProjectsV1ContainersProjectsUrl({\n protoPath: '/v1/projects/{projectId}',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload),\n };\n\n return metadata;\n }\n\n return __deleteProject;\n}\n\n/** Requests Project resume by starting or reusing its configured remote machine asynchronously. */\nexport function resumeProject(payload: object): RequestOptionsFactory<any> {\n function __resumeProject({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.containers.projects.v1.project',\n method: 'POST' as any,\n methodFqn: 'wix.containers.projects.v1.ContainersProjects.ResumeProject',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixContainersProjectsV1ContainersProjectsUrl({\n protoPath: '/v1/projects/{projectId}/resume',\n data: payload,\n host,\n }),\n data: payload,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: TRANSFORM_PATHS_0,\n },\n ]),\n };\n\n return metadata;\n }\n\n return __resumeProject;\n}\n\n/**\n * Generates a candidate display name for a Project from a user instruction, via the published\n * \"Regenerate app name\" Prompt Hub prompt. The current name and the project's description are\n * resolved server-side; the caller supplies only the instruction. Does not persist the result —\n * the caller saves an accepted name with UpdateProject.\n */\nexport function regenerateProjectName(\n payload: object\n): RequestOptionsFactory<any> {\n function __regenerateProjectName({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.containers.projects.v1.project',\n method: 'POST' as any,\n methodFqn:\n 'wix.containers.projects.v1.ContainersProjects.RegenerateProjectName',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixContainersProjectsV1ContainersProjectsUrl({\n protoPath: '/v1/projects/{projectId}/regenerate-name',\n data: payload,\n host,\n }),\n data: payload,\n };\n\n return metadata;\n }\n\n return __regenerateProjectName;\n}\n\n/**\n * Generates a candidate icon for a Project from a user instruction. The current project name,\n * icon, app description, and brand colors are resolved server-side. Does not persist the result —\n * the caller saves an accepted icon with UpdateProject.\n */\nexport function regenerateProjectIcon(\n payload: object\n): RequestOptionsFactory<any> {\n function __regenerateProjectIcon({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.containers.projects.v1.project',\n method: 'POST' as any,\n methodFqn:\n 'wix.containers.projects.v1.ContainersProjects.RegenerateProjectIcon',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixContainersProjectsV1ContainersProjectsUrl({\n protoPath: '/v1/projects/{projectId}/regenerate-icon',\n data: payload,\n host,\n }),\n data: payload,\n };\n\n return metadata;\n }\n\n return __regenerateProjectIcon;\n}\n\n/**\n * Persists a complete design-token document as a new Himalaya draft release, branched from the\n * release the client currently has displayed.\n *\n * Synchronous: the Himalaya write completes before this call returns. Never touches the project's\n * sandbox, runs a build, or activates the app — the saved release stays a draft, so what the live\n * app serves is unaffected. Persists nothing on our side: this creates no entity and posts no\n * chat checkpoint.\n */\nexport function saveProjectDesign(payload: object): RequestOptionsFactory<any> {\n function __saveProjectDesign({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.containers.projects.v1.project',\n method: 'POST' as any,\n methodFqn:\n 'wix.containers.projects.v1.ContainersProjects.SaveProjectDesign',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixContainersProjectsV1ContainersProjectsUrl({\n protoPath: '/v1/projects/{projectId}/save-design',\n data: payload,\n host,\n }),\n data: payload,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: TRANSFORM_PATHS_2,\n },\n ]),\n };\n\n return metadata;\n }\n\n return __saveProjectDesign;\n}\n\n/**\n * Lists the Projects of the current site — the MetaSite in the call scope — regardless of who owns\n * them. Anyone with access to the site sees the site's projects; other sites in the same account are\n * separate tenants and never appear here. The dashboard uses this; ListProjectsForCurrentUser stays\n * owner-scoped for callers that still depend on it.\n */\nexport function listProjects(payload: object): RequestOptionsFactory<any> {\n function __listProjects({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.containers.projects.v1.project',\n method: 'GET' as any,\n methodFqn: 'wix.containers.projects.v1.ContainersProjects.ListProjects',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixContainersProjectsV1ContainersProjectsUrl({\n protoPath: '/v1/projects',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload),\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: TRANSFORM_PATHS_3,\n },\n ]),\n };\n\n return metadata;\n }\n\n return __listProjects;\n}\n\n/**\n * Repeats authenticated Himalaya authorization for the current collaborator. This response is\n * a capability check only; every worker/design mutation performs a fresh check.\n */\nexport function getHimalayaAuthorization(\n payload: object\n): RequestOptionsFactory<any> {\n function __getHimalayaAuthorization({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.containers.projects.v1.project',\n method: 'GET' as any,\n methodFqn:\n 'wix.containers.projects.v1.ContainersProjects.GetHimalayaAuthorization',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixContainersProjectsV1ContainersProjectsUrl({\n protoPath: '/v1/projects/{projectId}/himalaya-authorization',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload),\n };\n\n return metadata;\n }\n\n return __getHimalayaAuthorization;\n}\n","import { HttpClient, NonNullablePaths } from '@wix/sdk-types';\nimport {\n GetHimalayaAuthorizationResponse,\n ListProjectsOptions,\n ListProjectsResponse,\n Project,\n RegenerateProjectIconResponse,\n RegenerateProjectNameResponse,\n ResumeProjectResponse,\n SaveProjectDesignOptions,\n SaveProjectDesignResponse,\n UpdateProject,\n createProject as universalCreateProject,\n deleteProject as universalDeleteProject,\n getHimalayaAuthorization as universalGetHimalayaAuthorization,\n getProject as universalGetProject,\n listProjects as universalListProjects,\n regenerateProjectIcon as universalRegenerateProjectIcon,\n regenerateProjectName as universalRegenerateProjectName,\n resumeProject as universalResumeProject,\n saveProjectDesign as universalSaveProjectDesign,\n updateProject as universalUpdateProject,\n} from './containers-projects-v1-project-projects.universal.js';\n\nexport const __metadata = { PACKAGE_NAME: '@wix/containers' };\n\n/** @internal */\nexport function createProject(httpClient: HttpClient): CreateProjectSignature {\n return (project: NonNullablePaths<Project, `platform` | `templateId`, 0>) =>\n universalCreateProject(\n project,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface CreateProjectSignature {\n /**\n * Creates a new Project from a template.\n * Looks up the template to find its backing source code, creates a dev-center app,\n * registers an AppProject, clones the template's git repository into a new\n * code-store project, and persists the Project.\n * @param - Project to be created.\n * @returns The created Project.\n */\n (project: NonNullablePaths<Project, `platform` | `templateId`, 0>): Promise<\n NonNullablePaths<\n Project,\n `name` | `status` | `sandboxStatus` | `metaSiteIds` | `platform`,\n 0\n >\n >;\n}\n\n/** @internal */\nexport function getProject(httpClient: HttpClient): GetProjectSignature {\n return (projectId: string) =>\n universalGetProject(\n projectId,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface GetProjectSignature {\n /**\n * Retrieves a Project by ID.\n * @param - ID of the Project to retrieve.\n * @returns The requested Project.\n */\n (projectId: string): Promise<\n NonNullablePaths<\n Project,\n `name` | `status` | `sandboxStatus` | `metaSiteIds` | `platform`,\n 0\n >\n >;\n}\n\n/** @internal */\nexport function updateProject(httpClient: HttpClient): UpdateProjectSignature {\n return (\n _id: string,\n project: NonNullablePaths<UpdateProject, `revision`, 0>\n ) =>\n universalUpdateProject(\n _id,\n project,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface UpdateProjectSignature {\n /**\n * Updates an existing Project.\n * @param - Project ID.\n * @returns Updated Project.\n */\n (\n _id: string,\n project: NonNullablePaths<UpdateProject, `revision`, 0>\n ): Promise<\n NonNullablePaths<\n Project,\n `name` | `status` | `sandboxStatus` | `metaSiteIds` | `platform`,\n 0\n >\n >;\n}\n\n/** @internal */\nexport function deleteProject(httpClient: HttpClient): DeleteProjectSignature {\n return (projectId: string) =>\n universalDeleteProject(\n projectId,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface DeleteProjectSignature {\n /**\n * Deletes a Project.\n * @param - Id of the Project to delete.\n */\n (projectId: string): Promise<void>;\n}\n\n/** @internal */\nexport function resumeProject(httpClient: HttpClient): ResumeProjectSignature {\n return (projectId: string) =>\n universalResumeProject(\n projectId,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface ResumeProjectSignature {\n /**\n * Requests Project resume by starting or reusing its configured remote machine asynchronously.\n * @param - ID of the Project to resume.\n */\n (projectId: string): Promise<\n NonNullablePaths<\n ResumeProjectResponse,\n | `project.name`\n | `project.status`\n | `project.sandboxStatus`\n | `project.metaSiteIds`\n | `project.platform`,\n 1\n >\n >;\n}\n\n/** @internal */\nexport function regenerateProjectName(\n httpClient: HttpClient\n): RegenerateProjectNameSignature {\n return (projectId: string, prompt: string) =>\n universalRegenerateProjectName(\n projectId,\n prompt,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface RegenerateProjectNameSignature {\n /**\n * Generates a candidate display name for a Project from a user instruction, via the published\n * \"Regenerate app name\" Prompt Hub prompt. The current name and the project's description are\n * resolved server-side; the caller supplies only the instruction. Does not persist the result —\n * the caller saves an accepted name with UpdateProject.\n * @param - ID of the Project to generate a new name for.\n * @param - The user's free-text renaming instruction, passed to the name-generation prompt.\n */\n (projectId: string, prompt: string): Promise<\n NonNullablePaths<RegenerateProjectNameResponse, `name`, 0>\n >;\n}\n\n/** @internal */\nexport function regenerateProjectIcon(\n httpClient: HttpClient\n): RegenerateProjectIconSignature {\n return (projectId: string, prompt: string) =>\n universalRegenerateProjectIcon(\n projectId,\n prompt,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface RegenerateProjectIconSignature {\n /**\n * Generates a candidate icon for a Project from a user instruction. The current project name,\n * icon, app description, and brand colors are resolved server-side. Does not persist the result —\n * the caller saves an accepted icon with UpdateProject.\n * @param - ID of the Project to generate a new icon for.\n * @param - The user's free-text icon instruction, passed to the icon-generation prompt.\n */\n (projectId: string, prompt: string): Promise<\n NonNullablePaths<RegenerateProjectIconResponse, `iconUrl`, 0>\n >;\n}\n\n/** @internal */\nexport function saveProjectDesign(\n httpClient: HttpClient\n): SaveProjectDesignSignature {\n return (\n projectId: string,\n baseReleaseId: string,\n options?: NonNullablePaths<\n SaveProjectDesignOptions,\n `himalayaControlToken` | `tokensJson`,\n 0\n >\n ) =>\n universalSaveProjectDesign(\n projectId,\n baseReleaseId,\n options,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface SaveProjectDesignSignature {\n /**\n * Persists a complete design-token document as a new Himalaya draft release, branched from the\n * release the client currently has displayed.\n *\n * Synchronous: the Himalaya write completes before this call returns. Never touches the project's\n * sandbox, runs a build, or activates the app — the saved release stays a draft, so what the live\n * app serves is unaffected. Persists nothing on our side: this creates no entity and posts no\n * chat checkpoint.\n * @param - Project whose design is being saved. The caller must own it.\n * @param - The Himalaya release ID currently displayed by the client. The saved draft branches from\n * exactly this release, even when a newer release exists for the app.\n */\n (\n projectId: string,\n baseReleaseId: string,\n options?: NonNullablePaths<\n SaveProjectDesignOptions,\n `himalayaControlToken` | `tokensJson`,\n 0\n >\n ): Promise<\n NonNullablePaths<\n SaveProjectDesignResponse,\n `himalayaReleaseId` | `previewToken`,\n 0\n >\n >;\n}\n\n/** @internal */\nexport function listProjects(httpClient: HttpClient): ListProjectsSignature {\n return (options?: ListProjectsOptions) =>\n universalListProjects(\n options,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface ListProjectsSignature {\n /**\n * Lists the Projects of the current site — the MetaSite in the call scope — regardless of who owns\n * them. Anyone with access to the site sees the site's projects; other sites in the same account are\n * separate tenants and never appear here. The dashboard uses this; ListProjectsForCurrentUser stays\n * owner-scoped for callers that still depend on it.\n */\n (options?: ListProjectsOptions): Promise<\n NonNullablePaths<\n ListProjectsResponse,\n | `projects`\n | `projects.${number}.name`\n | `projects.${number}.status`\n | `projects.${number}.sandboxStatus`\n | `projects.${number}.platform`,\n 2\n >\n >;\n}\n\n/** @internal */\nexport function getHimalayaAuthorization(\n httpClient: HttpClient\n): GetHimalayaAuthorizationSignature {\n return (projectId: string) =>\n universalGetHimalayaAuthorization(\n projectId,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface GetHimalayaAuthorizationSignature {\n /**\n * Repeats authenticated Himalaya authorization for the current collaborator. This response is\n * a capability check only; every worker/design mutation performs a fresh check.\n * @param - Site-tenanted Containers project being authorized.\n */\n (projectId: string): Promise<\n NonNullablePaths<\n GetHimalayaAuthorizationResponse,\n | `authorizationVersion`\n | `metaSiteId`\n | `projectId`\n | `canonicalApp`\n | `workerLaunch`\n | `saveDesign`,\n 0\n >\n >;\n}\n\nexport {\n AccountInfo,\n ActionEvent,\n CreateAgentSessionRequest,\n CreateAgentSessionResponse,\n CreateProjectRequest,\n CreateProjectResponse,\n CursorPaging,\n CursorPagingMetadata,\n Cursors,\n DeleteProjectRequest,\n DeleteProjectResponse,\n DomainEvent,\n DomainEventBodyOneOf,\n EntityCreatedEvent,\n EntityDeletedEvent,\n EntityUpdatedEvent,\n GetHimalayaAuthorizationRequest,\n GetHimalayaAuthorizationResponse,\n GetProjectRequest,\n GetProjectResponse,\n IdentificationData,\n IdentificationDataIdOneOf,\n ListProjectsForCurrentUserRequest,\n ListProjectsForCurrentUserResponse,\n ListProjectsOptions,\n ListProjectsRequest,\n ListProjectsResponse,\n MessageEnvelope,\n Platform,\n Project,\n ProjectPlanReady,\n ProjectResumeRequested,\n ProjectStartRequested,\n ProjectStatus,\n RefreshAgentSiteTokenRequest,\n RefreshAgentSiteTokenResponse,\n RegenerateProjectIconRequest,\n RegenerateProjectIconResponse,\n RegenerateProjectNameRequest,\n RegenerateProjectNameResponse,\n RestoreInfo,\n ResumeProjectRequest,\n ResumeProjectResponse,\n SandboxStatus,\n SaveProjectDesignOptions,\n SaveProjectDesignRequest,\n SaveProjectDesignResponse,\n StartProjectRequest,\n StartProjectResponse,\n UpdateProject,\n UpdateProjectRequest,\n UpdateProjectResponse,\n WebhookIdentityType,\n} from './containers-projects-v1-project-projects.universal.js';\n","import {\n createProject as publicCreateProject,\n getProject as publicGetProject,\n updateProject as publicUpdateProject,\n deleteProject as publicDeleteProject,\n resumeProject as publicResumeProject,\n regenerateProjectName as publicRegenerateProjectName,\n regenerateProjectIcon as publicRegenerateProjectIcon,\n saveProjectDesign as publicSaveProjectDesign,\n listProjects as publicListProjects,\n getHimalayaAuthorization as publicGetHimalayaAuthorization,\n} from './containers-projects-v1-project-projects.public.js';\nimport { createRESTModule } from '@wix/sdk-runtime/rest-modules';\nimport { BuildRESTFunction, MaybeContext } from '@wix/sdk-types';\n\n/** @internal */\nexport const createProject: MaybeContext<\n BuildRESTFunction<typeof publicCreateProject> & typeof publicCreateProject\n> = /*#__PURE__*/ createRESTModule(publicCreateProject);\n/** @internal */\nexport const getProject: MaybeContext<\n BuildRESTFunction<typeof publicGetProject> & typeof publicGetProject\n> = /*#__PURE__*/ createRESTModule(publicGetProject);\n/** @internal */\nexport const updateProject: MaybeContext<\n BuildRESTFunction<typeof publicUpdateProject> & typeof publicUpdateProject\n> = /*#__PURE__*/ createRESTModule(publicUpdateProject);\n/** @internal */\nexport const deleteProject: MaybeContext<\n BuildRESTFunction<typeof publicDeleteProject> & typeof publicDeleteProject\n> = /*#__PURE__*/ createRESTModule(publicDeleteProject);\n/** @internal */\nexport const resumeProject: MaybeContext<\n BuildRESTFunction<typeof publicResumeProject> & typeof publicResumeProject\n> = /*#__PURE__*/ createRESTModule(publicResumeProject);\n/** @internal */\nexport const regenerateProjectName: MaybeContext<\n BuildRESTFunction<typeof publicRegenerateProjectName> &\n typeof publicRegenerateProjectName\n> = /*#__PURE__*/ createRESTModule(publicRegenerateProjectName);\n/** @internal */\nexport const regenerateProjectIcon: MaybeContext<\n BuildRESTFunction<typeof publicRegenerateProjectIcon> &\n typeof publicRegenerateProjectIcon\n> = /*#__PURE__*/ createRESTModule(publicRegenerateProjectIcon);\n/** @internal */\nexport const saveProjectDesign: MaybeContext<\n BuildRESTFunction<typeof publicSaveProjectDesign> &\n typeof publicSaveProjectDesign\n> = /*#__PURE__*/ createRESTModule(publicSaveProjectDesign);\n/** @internal */\nexport const listProjects: MaybeContext<\n BuildRESTFunction<typeof publicListProjects> & typeof publicListProjects\n> = /*#__PURE__*/ createRESTModule(publicListProjects);\n/** @internal */\nexport const getHimalayaAuthorization: MaybeContext<\n BuildRESTFunction<typeof publicGetHimalayaAuthorization> &\n typeof publicGetHimalayaAuthorization\n> = /*#__PURE__*/ createRESTModule(publicGetHimalayaAuthorization);\n\nexport {\n ProjectStatus,\n SandboxStatus,\n Platform,\n WebhookIdentityType,\n} from './containers-projects-v1-project-projects.universal.js';\nexport {\n Project,\n ProjectStartRequested,\n ProjectResumeRequested,\n ProjectPlanReady,\n CreateAgentSessionRequest,\n CreateAgentSessionResponse,\n RefreshAgentSiteTokenRequest,\n RefreshAgentSiteTokenResponse,\n DomainEvent,\n DomainEventBodyOneOf,\n EntityCreatedEvent,\n RestoreInfo,\n EntityUpdatedEvent,\n EntityDeletedEvent,\n ActionEvent,\n MessageEnvelope,\n IdentificationData,\n IdentificationDataIdOneOf,\n AccountInfo,\n CreateProjectRequest,\n CreateProjectResponse,\n GetProjectRequest,\n GetProjectResponse,\n UpdateProjectRequest,\n UpdateProjectResponse,\n DeleteProjectRequest,\n DeleteProjectResponse,\n StartProjectRequest,\n StartProjectResponse,\n ResumeProjectRequest,\n ResumeProjectResponse,\n RegenerateProjectNameRequest,\n RegenerateProjectNameResponse,\n RegenerateProjectIconRequest,\n RegenerateProjectIconResponse,\n ListProjectsForCurrentUserRequest,\n CursorPaging,\n ListProjectsForCurrentUserResponse,\n CursorPagingMetadata,\n Cursors,\n SaveProjectDesignRequest,\n SaveProjectDesignResponse,\n ListProjectsRequest,\n ListProjectsResponse,\n GetHimalayaAuthorizationRequest,\n GetHimalayaAuthorizationResponse,\n UpdateProject,\n SaveProjectDesignOptions,\n ListProjectsOptions,\n} from './containers-projects-v1-project-projects.universal.js';\nexport {\n ProjectStatusWithLiterals,\n SandboxStatusWithLiterals,\n PlatformWithLiterals,\n WebhookIdentityTypeWithLiterals,\n} from './containers-projects-v1-project-projects.universal.js';\n"],"mappings":"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","names":["createProject","deleteProject","getHimalayaAuthorization","getProject","listProjects","regenerateProjectIcon","regenerateProjectName","resumeProject","saveProjectDesign","updateProject","import_timestamp","import_rest_modules","payload","ProjectStatus","SandboxStatus","Platform","WebhookIdentityType","createProject","sdkTransformError","getProject","updateProject","deleteProject","resumeProject","regenerateProjectName","regenerateProjectIcon","saveProjectDesign","listProjects","getHimalayaAuthorization","createProject","getProject","updateProject","deleteProject","resumeProject","regenerateProjectName","regenerateProjectIcon","saveProjectDesign","listProjects","getHimalayaAuthorization","import_rest_modules","createProject","getProject","updateProject","deleteProject","resumeProject","regenerateProjectName","regenerateProjectIcon","saveProjectDesign","listProjects","getHimalayaAuthorization"]}
1
+ {"version":3,"sources":["../../index.ts","../../src/containers-projects-v1-project-projects.universal.ts","../../src/containers-projects-v1-project-projects.http.ts","../../src/containers-projects-v1-project-projects.public.ts","../../src/containers-projects-v1-project-projects.context.ts"],"sourcesContent":["export * from './src/containers-projects-v1-project-projects.context.js';\n","import { transformError as sdkTransformError } from '@wix/sdk-runtime/transform-error';\nimport {\n renameKeysFromSDKRequestToRESTRequest,\n renameKeysFromRESTResponseToSDKResponse,\n} from '@wix/sdk-runtime/rename-all-nested-keys';\nimport { HttpClient, NonNullablePaths } from '@wix/sdk-types';\nimport * as ambassadorWixContainersProjectsV1Project from './containers-projects-v1-project-projects.http.js';\n\nexport interface Project {\n /**\n * Project ID.\n * @format GUID\n * @readonly\n */\n _id?: string | null;\n /**\n * Display name for the project.\n * @maxLength 200\n */\n name?: string;\n /** Current status of the project. */\n status?: ProjectStatusWithLiterals;\n /**\n * ID of the template used to create this project.\n * @format GUID\n * @immutable\n */\n templateId?: string | null;\n /**\n * ID of the git-code-store project (and backing dev-center app) for this project. Set on creation.\n * @format GUID\n * @readonly\n */\n codeStoreProjectId?: string | null;\n /**\n * The user id of the owner of this project\n * @format GUID\n * @readonly\n */\n ownerUserId?: string | null;\n /**\n * Revision number, which increments by 1 each time the Project is updated.\n * @readonly\n */\n revision?: string | null;\n /**\n * Date and time the Project was created.\n * @readonly\n */\n _createdDate?: Date | null;\n /**\n * Date and time the Project was last updated.\n * @readonly\n */\n _updatedDate?: Date | null;\n /**\n * Transient lock marking that a sandbox is currently being created for this project.\n * Used to serialize concurrent dev-machine creation; liveness of the sandbox itself is resolved via ListSandboxes.\n * @readonly\n */\n sandboxStatus?: SandboxStatusWithLiterals;\n /**\n * Meta site IDs (MSIDs) of the Wix sites this project is related to.\n * Optional — a project is not required to be tied to a site; may relate to many sites.\n * Preserve the deployed input contract; see containers-projects/SDK_COMPATIBILITY.md.\n * @format GUID\n */\n metaSiteIds?: string[];\n /**\n * Platform this project targets (iOS/Android). Supplied by the client at creation; immutable after.\n * @immutable\n */\n platform?: PlatformWithLiterals;\n /**\n * Optional app icon URL supplied by the client from Wix Media Manager.\n * @maxLength 2000\n */\n appIconUrl?: string | null;\n /**\n * The Himalaya release the editor is currently on — the \"head\" the client previews and the next\n * edit (design save or AI edit) branches from. Server-managed: set to the new draft after each\n * edit, and to the chosen release by RestoreRelease. Unset means \"newest release by date\" (the\n * pre-head default), so existing projects keep working until their first edit/restore sets it.\n * Not a GUID — a Himalaya release id (e.g. `rel-<hash>` / `<sha>-<hash>`).\n * @maxLength 200\n * @readonly\n */\n headReleaseId?: string | null;\n}\n\nexport enum ProjectStatus {\n /** Project created; client (via containers-plans) is doing most of the work. */\n PLANNING = 'PLANNING',\n /** Generation job created; project moves onward to machine startup. */\n BUILDING = 'BUILDING',\n /** Plan finalized; project is about to create the initial generation job. */\n PLAN_READY = 'PLAN_READY',\n}\n\n/** @enumType */\nexport type ProjectStatusWithLiterals =\n | ProjectStatus\n | 'PLANNING'\n | 'BUILDING'\n | 'PLAN_READY';\n\nexport enum SandboxStatus {\n /** No sandbox creation in progress. */\n NONE = 'NONE',\n /** A caller is currently creating a sandbox for this project (creation lock held). */\n CREATING = 'CREATING',\n}\n\n/** @enumType */\nexport type SandboxStatusWithLiterals = SandboxStatus | 'NONE' | 'CREATING';\n\nexport enum Platform {\n IOS = 'IOS',\n ANDROID = 'ANDROID',\n /**\n * Himalaya Mobile (Wix SDUI/OTA content package): mobile apps built headlessly on the\n * on-demand remote machine via the himi CLI, instead of native iOS/Android pods.\n */\n HIMALAYA_MOBILE = 'HIMALAYA_MOBILE',\n}\n\n/** @enumType */\nexport type PlatformWithLiterals =\n | Platform\n | 'IOS'\n | 'ANDROID'\n | 'HIMALAYA_MOBILE';\n\nexport interface ProjectStartRequested {\n /**\n * ID of the Project to start.\n * @format GUID\n */\n projectId?: string;\n}\n\nexport interface ProjectResumeRequested {\n /**\n * ID of the Project to resume.\n * @format GUID\n */\n projectId?: string;\n}\n\n/**\n * Emitted when the project transitions PLANNING -> PLAN_READY (on plan finalization). The project\n * self-consumes this event to start the app generation: mint the agent session, attach it to the\n * finalized conversation, create the initial generation job, and move to BUILDING. The finalized\n * plan is read back from containers-plans by project id when the job is built.\n */\nexport interface ProjectPlanReady {\n /**\n * ID of the Project whose plan is ready.\n * @format GUID\n */\n projectId?: string;\n /**\n * ID of the conversation that led to this plan being finalized. The minted agent session id is\n * attached to this conversation so the build can --resume it. Propagated from PlanFinalized.\n * @format GUID\n */\n conversationId?: string;\n}\n\nexport interface CreateAgentSessionRequest {\n /**\n * ID of the Project to create an agent session for.\n * @format GUID\n */\n projectId?: string;\n}\n\nexport interface CreateAgentSessionResponse {\n /**\n * Agent session ID materialized for the Project.\n * @format GUID\n */\n agentSessionId?: string;\n}\n\nexport interface RefreshAgentSiteTokenRequest {\n /**\n * Exact project/job tuple whose initiating user's site token should be re-minted.\n * @format GUID\n */\n projectId?: string;\n /**\n * Job whose persisted initiating user and MetaSite provenance must be revalidated.\n * @format GUID\n */\n jobId?: string;\n}\n\nexport interface RefreshAgentSiteTokenResponse {\n /**\n * A freshly minted site-scoped access token for the project owner. Sensitive credential material:\n * marked pii so the platform redacts it from request/response logging (never log it in app code either).\n * maxLength matches the sibling containers-project-versions token fields (4096) — ample for the\n * oauth2-ng user access token, and required by the string-validation standard.\n * @maxLength 4096\n */\n accessToken?: string;\n /** Seconds until the returned token expires, as reported by oauth2-ng. */\n expiresIn?: string;\n /** Version of the job-bound authorization response contract. */\n authorizationVersion?: number;\n /**\n * The project authorized by this refresh.\n * @format GUID\n */\n projectId?: string;\n /**\n * The job authorized by this refresh.\n * @format GUID\n */\n jobId?: string;\n /**\n * Trusted MetaSite captured when the job was created.\n * @format GUID\n */\n metaSiteId?: string;\n /**\n * Trusted dashboard USER captured when the job was created.\n * @format GUID\n */\n initiatingUserId?: string;\n}\n\nexport interface DomainEvent extends DomainEventBodyOneOf {\n createdEvent?: EntityCreatedEvent;\n updatedEvent?: EntityUpdatedEvent;\n deletedEvent?: EntityDeletedEvent;\n actionEvent?: ActionEvent;\n /** Event ID. With this ID you can easily spot duplicated events and ignore them. */\n _id?: string;\n /**\n * Fully Qualified Domain Name of an entity. This is a unique identifier assigned to the API main business entities.\n * For example, `wix.stores.catalog.product`, `wix.bookings.session`, `wix.payments.transaction`.\n */\n entityFqdn?: string;\n /**\n * Event action name, placed at the top level to make it easier for users to dispatch messages.\n * For example: `created`/`updated`/`deleted`/`started`/`completed`/`email_opened`.\n */\n slug?: string;\n /** ID of the entity associated with the event. */\n entityId?: string;\n /** Event timestamp in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format and UTC time. For example, `2020-04-26T13:57:50.699Z`. */\n eventTime?: Date | null;\n /**\n * Whether the event was triggered as a result of a privacy regulation application\n * (for example, GDPR).\n */\n triggeredByAnonymizeRequest?: boolean | null;\n /** If present, indicates the action that triggered the event. */\n originatedFrom?: string | null;\n /**\n * A sequence number that indicates the order of updates to an entity. For example, if an entity was updated at `16:00` and then again at `16:01`, the second update will always have a higher sequence number.\n * You can use this number to make sure you're handling updates in the right order. Just save the latest sequence number on your end and compare it to the one in each new message. If the new message has an older (lower) number, you can safely ignore it.\n */\n entityEventSequence?: string | null;\n}\n\n/** @oneof */\nexport interface DomainEventBodyOneOf {\n createdEvent?: EntityCreatedEvent;\n updatedEvent?: EntityUpdatedEvent;\n deletedEvent?: EntityDeletedEvent;\n actionEvent?: ActionEvent;\n}\n\nexport interface EntityCreatedEvent {\n entity?: string;\n}\n\nexport interface RestoreInfo {\n deletedDate?: Date | null;\n}\n\nexport interface EntityUpdatedEvent {\n /**\n * Since platformized APIs only expose PATCH and not PUT we can't assume that the fields sent from the client are the actual diff.\n * This means that to generate a list of changed fields (as opposed to sent fields) one needs to traverse both objects.\n * We don't want to impose this on all developers and so we leave this traversal to the notification recipients which need it.\n */\n currentEntity?: string;\n}\n\nexport interface EntityDeletedEvent {\n /** Entity that was deleted. */\n deletedEntity?: string | null;\n}\n\nexport interface ActionEvent {\n body?: string;\n}\n\nexport interface MessageEnvelope {\n /**\n * App instance ID.\n * @format GUID\n */\n instanceId?: string | null;\n /**\n * Event type.\n * @maxLength 150\n */\n eventType?: string;\n /** The identification type and identity data. */\n identity?: IdentificationData;\n /** Stringify payload. */\n data?: string;\n /** Details related to the account */\n accountInfo?: AccountInfo;\n}\n\nexport interface IdentificationData extends IdentificationDataIdOneOf {\n /**\n * ID of a site visitor that has not logged in to the site.\n * @format GUID\n */\n anonymousVisitorId?: string;\n /**\n * ID of a site visitor that has logged in to the site.\n * @format GUID\n */\n memberId?: string;\n /**\n * ID of a Wix user (site owner, contributor, etc.).\n * @format GUID\n */\n wixUserId?: string;\n /**\n * ID of an app.\n * @format GUID\n */\n appId?: string;\n /** @readonly */\n identityType?: WebhookIdentityTypeWithLiterals;\n}\n\n/** @oneof */\nexport interface IdentificationDataIdOneOf {\n /**\n * ID of a site visitor that has not logged in to the site.\n * @format GUID\n */\n anonymousVisitorId?: string;\n /**\n * ID of a site visitor that has logged in to the site.\n * @format GUID\n */\n memberId?: string;\n /**\n * ID of a Wix user (site owner, contributor, etc.).\n * @format GUID\n */\n wixUserId?: string;\n /**\n * ID of an app.\n * @format GUID\n */\n appId?: string;\n}\n\nexport enum WebhookIdentityType {\n UNKNOWN = 'UNKNOWN',\n ANONYMOUS_VISITOR = 'ANONYMOUS_VISITOR',\n MEMBER = 'MEMBER',\n WIX_USER = 'WIX_USER',\n APP = 'APP',\n}\n\n/** @enumType */\nexport type WebhookIdentityTypeWithLiterals =\n | WebhookIdentityType\n | 'UNKNOWN'\n | 'ANONYMOUS_VISITOR'\n | 'MEMBER'\n | 'WIX_USER'\n | 'APP';\n\nexport interface AccountInfo {\n /**\n * ID of the Wix account associated with the event.\n * @format GUID\n */\n accountId?: string | null;\n /**\n * ID of the parent Wix account. Only included when accountId belongs to a child account.\n * @format GUID\n */\n parentAccountId?: string | null;\n /**\n * ID of the Wix site associated with the event. Only included when the event is tied to a specific site.\n * @format GUID\n */\n siteId?: string | null;\n}\n\nexport interface CreateProjectRequest {\n /** Project to be created. */\n project: Project;\n}\n\nexport interface CreateProjectResponse {\n /** The created Project. */\n project?: Project;\n}\n\nexport interface GetProjectRequest {\n /**\n * ID of the Project to retrieve.\n * @format GUID\n */\n projectId: string;\n}\n\nexport interface GetProjectResponse {\n /** The requested Project. */\n project?: Project;\n}\n\nexport interface UpdateProjectRequest {\n /** Project to be updated, may be partial. */\n project: Project;\n /**\n * Set of fields to update.\n * @internal\n */\n fieldMask?: string[];\n}\n\nexport interface UpdateProjectResponse {\n /** Updated Project. */\n project?: Project;\n}\n\nexport interface DeleteProjectRequest {\n /**\n * Id of the Project to delete.\n * @format GUID\n */\n projectId: string;\n}\n\nexport interface DeleteProjectResponse {}\n\nexport interface StartProjectRequest {\n /**\n * ID of the Project to start.\n * @format GUID\n */\n projectId?: string;\n}\n\nexport interface StartProjectResponse {\n /** The Project for which start was requested. */\n project?: Project;\n}\n\nexport interface ResumeProjectRequest {\n /**\n * ID of the Project to resume.\n * @format GUID\n */\n projectId: string;\n}\n\nexport interface ResumeProjectResponse {\n /** The Project for which resume was requested. */\n project?: Project;\n}\n\nexport interface RegenerateProjectNameRequest {\n /**\n * ID of the Project to generate a new name for.\n * @format GUID\n */\n projectId: string;\n /**\n * The user's free-text renaming instruction, passed to the name-generation prompt.\n * @maxLength 4000\n */\n prompt: string;\n}\n\nexport interface RegenerateProjectNameResponse {\n /**\n * The generated display name, at most 30 characters. Not persisted.\n * @maxLength 30\n */\n name?: string;\n}\n\nexport interface RegenerateProjectIconRequest {\n /**\n * ID of the Project to generate a new icon for.\n * @format GUID\n */\n projectId: string;\n /**\n * The user's free-text icon instruction, passed to the icon-generation prompt.\n * @maxLength 4000\n */\n prompt: string;\n}\n\nexport interface RegenerateProjectIconResponse {\n /**\n * The generated icon URL. Not persisted.\n * @format WEB_URL\n */\n iconUrl?: string;\n}\n\nexport interface ListProjectsForCurrentUserRequest {\n /** Cursor paging options. */\n paging?: CursorPaging;\n}\n\nexport interface CursorPaging {\n /**\n * Maximum number of items to return in the results.\n * @max 100\n */\n limit?: number | null;\n /**\n * Pointer to the next or previous page in the list of results.\n *\n * Pass the relevant cursor token from the `pagingMetadata` object in the previous call's response.\n * Not relevant for the first request.\n * @maxLength 16000\n */\n cursor?: string | null;\n}\n\nexport interface ListProjectsForCurrentUserResponse {\n /** Projects owned by the current user. */\n projects?: Project[];\n /** Paging metadata for cursor-based pagination. */\n pagingMetadata?: CursorPagingMetadata;\n}\n\nexport interface CursorPagingMetadata {\n /** Number of items returned in current page. */\n count?: number | null;\n /** Cursor strings that point to the next page, previous page, or both. */\n cursors?: Cursors;\n /**\n * Whether there are more pages to retrieve following the current page.\n *\n * + `true`: Another page of results can be retrieved.\n * + `false`: This is the last page.\n */\n hasNext?: boolean | null;\n}\n\nexport interface Cursors {\n /**\n * Cursor string pointing to the next page in the list of results.\n * @maxLength 16000\n */\n next?: string | null;\n /**\n * Cursor pointing to the previous page in the list of results.\n * @maxLength 16000\n */\n prev?: string | null;\n}\n\nexport interface SaveProjectDesignRequest {\n /**\n * Project whose design is being saved. The caller must own it.\n * @format GUID\n */\n projectId: string;\n /**\n * The Himalaya release ID currently displayed by the client. The saved draft branches from\n * exactly this release, even when a newer release exists for the app.\n * @maxLength 100\n */\n baseReleaseId: string;\n /**\n * The complete edited design-token document, as a JSON object string — not a flattened set of\n * preview overrides. The caller is responsible for preserving unknown groups and light/dark\n * values it did not change.\n * @maxLength 65536\n */\n tokensJson: string;\n /**\n * Short-lived, app-scoped Himalaya control credential the client obtained from Himalaya's owner\n * embed-token endpoint. Forwarded to Himalaya for this call only — never logged, persisted, or\n * echoed back in any response, error, or event.\n *\n * The app this call writes to is NOT taken from this request. It is composed from the owner\n * prefix this credential carries plus project_id; see HimalayaAppSlug.\n * @maxLength 4096\n */\n himalayaControlToken: string;\n /**\n * Client assertion of the canonical app returned by authenticated Himalaya lookup. Catalyst\n * resolves and validates the same value; it is never used as an unchecked write target.\n * @maxLength 200\n */\n canonicalApp?: string;\n /**\n * Conversation this design is saved from. When set, a CHECKPOINT message marking the saved\n * version is posted into it (best-effort). Optional — an older client that omits it still saves\n * the design; it just produces no checkpoint. Verified to belong to this project server-side.\n *\n * Deliberately NOT (.wix.api.format) = GUID: posting the checkpoint is best-effort and must never\n * fail the save. A malformed/unexpected id is handled downstream (the ownership lookup rejects it\n * and the checkpoint is skipped) rather than hard-failing SaveProjectDesign at the request boundary.\n * @maxLength 100\n */\n conversationId?: string;\n}\n\nexport interface SaveProjectDesignResponse {\n /**\n * The saved draft release. Always a draft, so the app's live release is untouched.\n * @maxLength 100\n */\n himalayaReleaseId?: string;\n /**\n * Short-lived credential for previewing the saved draft release. Response-only: never persisted\n * or placed in a preview URL by this service.\n * @maxLength 4096\n */\n previewToken?: string;\n /** When preview_token expires. */\n previewTokenExpiresAt?: Date | null;\n}\n\nexport interface RestoreReleaseRequest {\n /**\n * Project whose head is being moved. The caller must own it.\n * @format GUID\n */\n projectId: string;\n /**\n * The Himalaya release to make the project's editable head. Not a GUID — a Himalaya release id\n * (e.g. `rel-<hash>` / `<sha>-<hash>`), taken from the project's own release ledger.\n * @maxLength 200\n */\n releaseId: string;\n /**\n * Short-lived, app-scoped Himalaya control credential (the same the client obtains from Himalaya's\n * owner embed-token endpoint and sends on SaveProjectDesign). When present, the server verifies\n * release_id belongs to this project's Himalaya app before moving head. Optional for back-compat:\n * an older client that omits it skips that check (the release still comes from the project's own\n * ledger). Forwarded to Himalaya for the ledger read only — never logged, persisted, or echoed.\n * @maxLength 4096\n */\n himalayaControlToken?: string;\n /**\n * Conversation this restore is made from. When set, a CHECKPOINT message marking the restored\n * version is posted into it (best-effort). Optional — a client that omits it still restores; it\n * just produces no checkpoint. Verified to belong to this project server-side.\n *\n * Deliberately NOT (.wix.api.format) = GUID: posting the checkpoint is best-effort and must never\n * fail the restore. A malformed id is handled downstream (the ownership lookup rejects it and the\n * checkpoint is skipped) rather than hard-failing RestoreRelease at the request boundary.\n * @maxLength 100\n */\n conversationId?: string;\n}\n\nexport interface RestoreReleaseResponse {\n /** The project after the restore, with head_release_id set to the restored release. */\n project?: Project;\n}\n\nexport interface ListProjectsRequest {\n /** Cursor paging options. */\n paging?: CursorPaging;\n}\n\nexport interface ListProjectsResponse {\n /** Projects in the current site. */\n projects?: Project[];\n /** Paging metadata for cursor-based pagination. */\n pagingMetadata?: CursorPagingMetadata;\n}\n\nexport interface GetHimalayaAuthorizationRequest {\n /**\n * Site-tenanted Containers project being authorized.\n * @format GUID\n */\n projectId: string;\n}\n\nexport interface GetHimalayaAuthorizationResponse {\n /** Version of the authorization capability contract. */\n authorizationVersion?: number;\n /**\n * Trusted MetaSite selected from request identity context.\n * @format GUID\n */\n metaSiteId?: string;\n /**\n * Site-tenanted Containers project authorized by the lookup.\n * @format GUID\n */\n projectId?: string;\n /**\n * Verified canonical Himalaya app slug.\n * @maxLength 200\n */\n canonicalApp?: string;\n /** Whether a fresh worker launch is currently authorized. */\n workerLaunch?: boolean;\n /** Whether a fresh design save is currently authorized. */\n saveDesign?: boolean;\n}\n\n/**\n * Creates a new Project from a template.\n * Looks up the template to find its backing source code, creates a dev-center app,\n * registers an AppProject, clones the template's git repository into a new\n * code-store project, and persists the Project.\n * @param project - Project to be created.\n * @internal\n * @documentationMaturity preview\n * @requiredField project\n * @requiredField project.platform\n * @requiredField project.templateId\n * @permissionId containers:projects:v1:project:create_project\n * @returns The created Project.\n * @fqn wix.containers.projects.v1.ContainersProjects.CreateProject\n */\nexport async function createProject(\n project: NonNullablePaths<Project, `platform` | `templateId`, 0>\n): Promise<\n NonNullablePaths<\n Project,\n `name` | `status` | `sandboxStatus` | `metaSiteIds` | `platform`,\n 0\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({ project: project });\n\n const reqOpts =\n ambassadorWixContainersProjectsV1Project.createProject(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)?.project!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { project: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['project']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Retrieves a Project by ID.\n * @param projectId - ID of the Project to retrieve.\n * @public\n * @documentationMaturity preview\n * @requiredField projectId\n * @permissionId containers:projects:v1:project:get_project\n * @returns The requested Project.\n * @fqn wix.containers.projects.v1.ContainersProjects.GetProject\n */\nexport async function getProject(\n projectId: string\n): Promise<\n NonNullablePaths<\n Project,\n `name` | `status` | `sandboxStatus` | `metaSiteIds` | `platform`,\n 0\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n projectId: projectId,\n });\n\n const reqOpts = ambassadorWixContainersProjectsV1Project.getProject(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)?.project!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { projectId: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['projectId']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Updates an existing Project.\n * @param _id - Project ID.\n * @internal\n * @documentationMaturity preview\n * @requiredField _id\n * @requiredField project\n * @requiredField project.revision\n * @permissionId containers:projects:v1:project:update_project\n * @returns Updated Project.\n * @fqn wix.containers.projects.v1.ContainersProjects.UpdateProject\n */\nexport async function updateProject(\n _id: string,\n project: NonNullablePaths<UpdateProject, `revision`, 0>\n): Promise<\n NonNullablePaths<\n Project,\n `name` | `status` | `sandboxStatus` | `metaSiteIds` | `platform`,\n 0\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[2] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n project: { ...project, id: _id },\n });\n\n const reqOpts =\n ambassadorWixContainersProjectsV1Project.updateProject(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)?.project!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: { project: '$[1]' },\n explicitPathsToArguments: { 'project.id': '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['_id', 'project']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\nexport interface UpdateProject {\n /**\n * Project ID.\n * @format GUID\n * @readonly\n */\n _id?: string | null;\n /**\n * Display name for the project.\n * @maxLength 200\n */\n name?: string;\n /** Current status of the project. */\n status?: ProjectStatusWithLiterals;\n /**\n * ID of the template used to create this project.\n * @format GUID\n * @immutable\n */\n templateId?: string | null;\n /**\n * ID of the git-code-store project (and backing dev-center app) for this project. Set on creation.\n * @format GUID\n * @readonly\n */\n codeStoreProjectId?: string | null;\n /**\n * The user id of the owner of this project\n * @format GUID\n * @readonly\n */\n ownerUserId?: string | null;\n /**\n * Revision number, which increments by 1 each time the Project is updated.\n * @readonly\n */\n revision?: string | null;\n /**\n * Date and time the Project was created.\n * @readonly\n */\n _createdDate?: Date | null;\n /**\n * Date and time the Project was last updated.\n * @readonly\n */\n _updatedDate?: Date | null;\n /**\n * Transient lock marking that a sandbox is currently being created for this project.\n * Used to serialize concurrent dev-machine creation; liveness of the sandbox itself is resolved via ListSandboxes.\n * @readonly\n */\n sandboxStatus?: SandboxStatusWithLiterals;\n /**\n * Meta site IDs (MSIDs) of the Wix sites this project is related to.\n * Optional — a project is not required to be tied to a site; may relate to many sites.\n * Preserve the deployed input contract; see containers-projects/SDK_COMPATIBILITY.md.\n * @format GUID\n */\n metaSiteIds?: string[];\n /**\n * Platform this project targets (iOS/Android). Supplied by the client at creation; immutable after.\n * @immutable\n */\n platform?: PlatformWithLiterals;\n /**\n * Optional app icon URL supplied by the client from Wix Media Manager.\n * @maxLength 2000\n */\n appIconUrl?: string | null;\n /**\n * The Himalaya release the editor is currently on — the \"head\" the client previews and the next\n * edit (design save or AI edit) branches from. Server-managed: set to the new draft after each\n * edit, and to the chosen release by RestoreRelease. Unset means \"newest release by date\" (the\n * pre-head default), so existing projects keep working until their first edit/restore sets it.\n * Not a GUID — a Himalaya release id (e.g. `rel-<hash>` / `<sha>-<hash>`).\n * @maxLength 200\n * @readonly\n */\n headReleaseId?: string | null;\n}\n\n/**\n * Deletes a Project.\n * @param projectId - Id of the Project to delete.\n * @internal\n * @documentationMaturity preview\n * @requiredField projectId\n * @permissionId containers:projects:v1:project:delete_project\n * @fqn wix.containers.projects.v1.ContainersProjects.DeleteProject\n */\nexport async function deleteProject(projectId: string): Promise<void> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n projectId: projectId,\n });\n\n const reqOpts =\n ambassadorWixContainersProjectsV1Project.deleteProject(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { projectId: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['projectId']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Requests Project resume by starting or reusing its configured remote machine asynchronously.\n * @param projectId - ID of the Project to resume.\n * @public\n * @documentationMaturity preview\n * @requiredField projectId\n * @permissionId containers:projects:v1:project:resume_project\n * @fqn wix.containers.projects.v1.ContainersProjects.ResumeProject\n */\nexport async function resumeProject(\n projectId: string\n): Promise<\n NonNullablePaths<\n ResumeProjectResponse,\n | `project.name`\n | `project.status`\n | `project.sandboxStatus`\n | `project.metaSiteIds`\n | `project.platform`,\n 1\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n projectId: projectId,\n });\n\n const reqOpts =\n ambassadorWixContainersProjectsV1Project.resumeProject(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { projectId: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['projectId']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Generates a candidate display name for a Project from a user instruction, via the published\n * \"Regenerate app name\" Prompt Hub prompt. The current name and the project's description are\n * resolved server-side; the caller supplies only the instruction. Does not persist the result —\n * the caller saves an accepted name with UpdateProject.\n * @param projectId - ID of the Project to generate a new name for.\n * @param prompt - The user's free-text renaming instruction, passed to the name-generation prompt.\n * @internal\n * @documentationMaturity preview\n * @requiredField projectId\n * @requiredField prompt\n * @permissionId containers:projects:v1:project:regenerate_project_name\n * @fqn wix.containers.projects.v1.ContainersProjects.RegenerateProjectName\n */\nexport async function regenerateProjectName(\n projectId: string,\n prompt: string\n): Promise<NonNullablePaths<RegenerateProjectNameResponse, `name`, 0>> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[2] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n projectId: projectId,\n prompt: prompt,\n });\n\n const reqOpts =\n ambassadorWixContainersProjectsV1Project.regenerateProjectName(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { projectId: '$[0]', prompt: '$[1]' },\n singleArgumentUnchanged: false,\n },\n ['projectId', 'prompt']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Generates a candidate icon for a Project from a user instruction. The current project name,\n * icon, app description, and brand colors are resolved server-side. Does not persist the result —\n * the caller saves an accepted icon with UpdateProject.\n * @param projectId - ID of the Project to generate a new icon for.\n * @param prompt - The user's free-text icon instruction, passed to the icon-generation prompt.\n * @internal\n * @documentationMaturity preview\n * @requiredField projectId\n * @requiredField prompt\n * @permissionId containers:projects:v1:project:regenerate_project_icon\n * @fqn wix.containers.projects.v1.ContainersProjects.RegenerateProjectIcon\n */\nexport async function regenerateProjectIcon(\n projectId: string,\n prompt: string\n): Promise<NonNullablePaths<RegenerateProjectIconResponse, `iconUrl`, 0>> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[2] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n projectId: projectId,\n prompt: prompt,\n });\n\n const reqOpts =\n ambassadorWixContainersProjectsV1Project.regenerateProjectIcon(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { projectId: '$[0]', prompt: '$[1]' },\n singleArgumentUnchanged: false,\n },\n ['projectId', 'prompt']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Persists a complete design-token document as a new Himalaya draft release, branched from the\n * release the client currently has displayed.\n *\n * Synchronous: the Himalaya write completes before this call returns. Never touches the project's\n * sandbox, runs a build, or activates the app — the saved release stays a draft, so what the live\n * app serves is unaffected. Persists no entity of its own. When `conversation_id` is supplied it\n * posts a CHECKPOINT message for the saved release into that conversation (best-effort — a chat\n * failure never fails the save); omit it to skip the checkpoint.\n * @param projectId - Project whose design is being saved. The caller must own it.\n * @param baseReleaseId - The Himalaya release ID currently displayed by the client. The saved draft branches from\n * exactly this release, even when a newer release exists for the app.\n * @public\n * @documentationMaturity preview\n * @requiredField baseReleaseId\n * @requiredField options.himalayaControlToken\n * @requiredField options.tokensJson\n * @requiredField projectId\n * @permissionId containers:projects:v1:project:save_project_design\n * @fqn wix.containers.projects.v1.ContainersProjects.SaveProjectDesign\n */\nexport async function saveProjectDesign(\n projectId: string,\n baseReleaseId: string,\n options?: NonNullablePaths<\n SaveProjectDesignOptions,\n `himalayaControlToken` | `tokensJson`,\n 0\n >\n): Promise<\n NonNullablePaths<\n SaveProjectDesignResponse,\n `himalayaReleaseId` | `previewToken`,\n 0\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[3] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n projectId: projectId,\n baseReleaseId: baseReleaseId,\n tokensJson: options?.tokensJson,\n himalayaControlToken: options?.himalayaControlToken,\n canonicalApp: options?.canonicalApp,\n conversationId: options?.conversationId,\n });\n\n const reqOpts =\n ambassadorWixContainersProjectsV1Project.saveProjectDesign(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: {\n projectId: '$[0]',\n baseReleaseId: '$[1]',\n tokensJson: '$[2].tokensJson',\n himalayaControlToken: '$[2].himalayaControlToken',\n canonicalApp: '$[2].canonicalApp',\n conversationId: '$[2].conversationId',\n },\n singleArgumentUnchanged: false,\n },\n ['projectId', 'baseReleaseId', 'options']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\nexport interface SaveProjectDesignOptions {\n /**\n * The complete edited design-token document, as a JSON object string — not a flattened set of\n * preview overrides. The caller is responsible for preserving unknown groups and light/dark\n * values it did not change.\n * @maxLength 65536\n */\n tokensJson: string;\n /**\n * Short-lived, app-scoped Himalaya control credential the client obtained from Himalaya's owner\n * embed-token endpoint. Forwarded to Himalaya for this call only — never logged, persisted, or\n * echoed back in any response, error, or event.\n *\n * The app this call writes to is NOT taken from this request. It is composed from the owner\n * prefix this credential carries plus project_id; see HimalayaAppSlug.\n * @maxLength 4096\n */\n himalayaControlToken: string;\n /**\n * Client assertion of the canonical app returned by authenticated Himalaya lookup. Catalyst\n * resolves and validates the same value; it is never used as an unchecked write target.\n * @maxLength 200\n */\n canonicalApp?: string;\n /**\n * Conversation this design is saved from. When set, a CHECKPOINT message marking the saved\n * version is posted into it (best-effort). Optional — an older client that omits it still saves\n * the design; it just produces no checkpoint. Verified to belong to this project server-side.\n *\n * Deliberately NOT (.wix.api.format) = GUID: posting the checkpoint is best-effort and must never\n * fail the save. A malformed/unexpected id is handled downstream (the ownership lookup rejects it\n * and the checkpoint is skipped) rather than hard-failing SaveProjectDesign at the request boundary.\n * @maxLength 100\n */\n conversationId?: string;\n}\n\n/**\n * Restores an earlier version by pointing the project's editable head at `release_id`: the client\n * then previews that release and the next edit (design save or AI edit) branches from it. Pure\n * project state — sets `head_release_id` and nothing in Himalaya: it does NOT activate the release,\n * so the live app end-users run is untouched (a later publish/build is what carries head live).\n *\n * `release_id` is a Himalaya release id the caller already holds from the project's own release\n * ledger, scoped to this project's app; the server stores it as head without re-reading Himalaya.\n * When `conversation_id` is supplied, a CHECKPOINT message for the restored release is posted into\n * it (best-effort — a chat failure never fails the restore); omit it to skip the checkpoint.\n * @param projectId - Project whose head is being moved. The caller must own it.\n * @param releaseId - The Himalaya release to make the project's editable head. Not a GUID — a Himalaya release id\n * (e.g. `rel-<hash>` / `<sha>-<hash>`), taken from the project's own release ledger.\n * @public\n * @documentationMaturity preview\n * @requiredField projectId\n * @requiredField releaseId\n * @permissionId containers:projects:v1:project:restore_release\n * @fqn wix.containers.projects.v1.ContainersProjects.RestoreRelease\n */\nexport async function restoreRelease(\n projectId: string,\n releaseId: string,\n options?: RestoreReleaseOptions\n): Promise<\n NonNullablePaths<\n RestoreReleaseResponse,\n | `project.name`\n | `project.status`\n | `project.sandboxStatus`\n | `project.metaSiteIds`\n | `project.platform`,\n 1\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[3] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n projectId: projectId,\n releaseId: releaseId,\n himalayaControlToken: options?.himalayaControlToken,\n conversationId: options?.conversationId,\n });\n\n const reqOpts =\n ambassadorWixContainersProjectsV1Project.restoreRelease(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: {\n projectId: '$[0]',\n releaseId: '$[1]',\n himalayaControlToken: '$[2].himalayaControlToken',\n conversationId: '$[2].conversationId',\n },\n singleArgumentUnchanged: false,\n },\n ['projectId', 'releaseId', 'options']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\nexport interface RestoreReleaseOptions {\n /**\n * Short-lived, app-scoped Himalaya control credential (the same the client obtains from Himalaya's\n * owner embed-token endpoint and sends on SaveProjectDesign). When present, the server verifies\n * release_id belongs to this project's Himalaya app before moving head. Optional for back-compat:\n * an older client that omits it skips that check (the release still comes from the project's own\n * ledger). Forwarded to Himalaya for the ledger read only — never logged, persisted, or echoed.\n * @maxLength 4096\n */\n himalayaControlToken?: string;\n /**\n * Conversation this restore is made from. When set, a CHECKPOINT message marking the restored\n * version is posted into it (best-effort). Optional — a client that omits it still restores; it\n * just produces no checkpoint. Verified to belong to this project server-side.\n *\n * Deliberately NOT (.wix.api.format) = GUID: posting the checkpoint is best-effort and must never\n * fail the restore. A malformed id is handled downstream (the ownership lookup rejects it and the\n * checkpoint is skipped) rather than hard-failing RestoreRelease at the request boundary.\n * @maxLength 100\n */\n conversationId?: string;\n}\n\n/**\n * Lists the Projects of the current site — the MetaSite in the call scope — regardless of who owns\n * them. Anyone with access to the site sees the site's projects; other sites in the same account are\n * separate tenants and never appear here. The dashboard uses this; ListProjectsForCurrentUser stays\n * owner-scoped for callers that still depend on it.\n * @internal\n * @documentationMaturity preview\n * @permissionId containers:projects:v1:project:list_projects\n * @fqn wix.containers.projects.v1.ContainersProjects.ListProjects\n */\nexport async function listProjects(\n options?: ListProjectsOptions\n): Promise<\n NonNullablePaths<\n ListProjectsResponse,\n | `projects`\n | `projects.${number}.name`\n | `projects.${number}.status`\n | `projects.${number}.sandboxStatus`\n | `projects.${number}.platform`,\n 2\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n paging: options?.paging,\n });\n\n const reqOpts =\n ambassadorWixContainersProjectsV1Project.listProjects(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { paging: '$[0].paging' },\n singleArgumentUnchanged: false,\n },\n ['options']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\nexport interface ListProjectsOptions {\n /** Cursor paging options. */\n paging?: CursorPaging;\n}\n\n/**\n * Repeats authenticated Himalaya authorization for the current collaborator. This response is\n * a capability check only; every worker/design mutation performs a fresh check.\n * @param projectId - Site-tenanted Containers project being authorized.\n * @public\n * @documentationMaturity preview\n * @requiredField projectId\n * @permissionId containers:projects:v1:project:get_himalaya_authorization\n * @fqn wix.containers.projects.v1.ContainersProjects.GetHimalayaAuthorization\n */\nexport async function getHimalayaAuthorization(\n projectId: string\n): Promise<\n NonNullablePaths<\n GetHimalayaAuthorizationResponse,\n | `authorizationVersion`\n | `metaSiteId`\n | `projectId`\n | `canonicalApp`\n | `workerLaunch`\n | `saveDesign`,\n 0\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n projectId: projectId,\n });\n\n const reqOpts =\n ambassadorWixContainersProjectsV1Project.getHimalayaAuthorization(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { projectId: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['projectId']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n","import { toURLSearchParams } from '@wix/sdk-runtime/rest-modules';\nimport { transformSDKTimestampToRESTTimestamp } from '@wix/sdk-runtime/transformations/timestamp';\nimport { transformRESTTimestampToSDKTimestamp } from '@wix/sdk-runtime/transformations/timestamp';\nimport { transformSDKFieldMaskToRESTFieldMask } from '@wix/sdk-runtime/transformations/field-mask';\nimport { transformPaths } from '@wix/sdk-runtime/transformations/transform-paths';\nimport { resolveUrl } from '@wix/sdk-runtime/rest-modules';\nimport { ResolveUrlOpts } from '@wix/sdk-runtime/rest-modules';\nimport { RequestOptionsFactory } from '@wix/sdk-types';\n\nconst TRANSFORM_PATHS_0 = [\n { path: 'project.createdDate' },\n { path: 'project.updatedDate' },\n];\nconst TRANSFORM_PATHS_1 = [{ path: 'fieldMask' }];\nconst TRANSFORM_PATHS_2 = [{ path: 'previewTokenExpiresAt' }];\nconst TRANSFORM_PATHS_3 = [\n { path: 'projects.createdDate' },\n { path: 'projects.updatedDate' },\n];\n\nfunction resolveWixContainersProjectsV1ContainersProjectsUrl(\n opts: Omit<ResolveUrlOpts, 'domainToMappings'>\n) {\n const domainToMappings = {\n 'manage._base_domain_': [\n {\n srcPath: '/_api/containers-projects',\n destPath: '',\n },\n ],\n };\n\n return resolveUrl(Object.assign(opts, { domainToMappings }));\n}\n\nconst PACKAGE_NAME = '@wix/auto_sdk_containers_projects';\n\n/**\n * Creates a new Project from a template.\n * Looks up the template to find its backing source code, creates a dev-center app,\n * registers an AppProject, clones the template's git repository into a new\n * code-store project, and persists the Project.\n */\nexport function createProject(payload: object): RequestOptionsFactory<any> {\n function __createProject({ host }: any) {\n const serializedData = transformPaths(payload, [\n {\n transformFn: transformSDKTimestampToRESTTimestamp,\n paths: TRANSFORM_PATHS_0,\n },\n ]);\n const metadata = {\n entityFqdn: 'wix.containers.projects.v1.project',\n method: 'POST' as any,\n methodFqn: 'wix.containers.projects.v1.ContainersProjects.CreateProject',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixContainersProjectsV1ContainersProjectsUrl({\n protoPath: '/v1/projects',\n data: serializedData,\n host,\n }),\n data: serializedData,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: TRANSFORM_PATHS_0,\n },\n ]),\n };\n\n return metadata;\n }\n\n return __createProject;\n}\n\n/** Retrieves a Project by ID. */\nexport function getProject(payload: object): RequestOptionsFactory<any> {\n function __getProject({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.containers.projects.v1.project',\n method: 'GET' as any,\n methodFqn: 'wix.containers.projects.v1.ContainersProjects.GetProject',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixContainersProjectsV1ContainersProjectsUrl({\n protoPath: '/v1/projects/{projectId}',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload),\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: TRANSFORM_PATHS_0,\n },\n ]),\n };\n\n return metadata;\n }\n\n return __getProject;\n}\n\n/** Updates an existing Project. */\nexport function updateProject(payload: object): RequestOptionsFactory<any> {\n function __updateProject({ host }: any) {\n const serializedData = transformPaths(payload, [\n {\n transformFn: transformSDKFieldMaskToRESTFieldMask,\n paths: TRANSFORM_PATHS_1,\n },\n {\n transformFn: transformSDKTimestampToRESTTimestamp,\n paths: TRANSFORM_PATHS_0,\n },\n ]);\n const metadata = {\n entityFqdn: 'wix.containers.projects.v1.project',\n method: 'PATCH' as any,\n methodFqn: 'wix.containers.projects.v1.ContainersProjects.UpdateProject',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixContainersProjectsV1ContainersProjectsUrl({\n protoPath: '/v1/projects/{project.id}',\n data: serializedData,\n host,\n }),\n data: serializedData,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: TRANSFORM_PATHS_0,\n },\n ]),\n };\n\n return metadata;\n }\n\n return __updateProject;\n}\n\n/** Deletes a Project. */\nexport function deleteProject(payload: object): RequestOptionsFactory<any> {\n function __deleteProject({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.containers.projects.v1.project',\n method: 'DELETE' as any,\n methodFqn: 'wix.containers.projects.v1.ContainersProjects.DeleteProject',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixContainersProjectsV1ContainersProjectsUrl({\n protoPath: '/v1/projects/{projectId}',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload),\n };\n\n return metadata;\n }\n\n return __deleteProject;\n}\n\n/** Requests Project resume by starting or reusing its configured remote machine asynchronously. */\nexport function resumeProject(payload: object): RequestOptionsFactory<any> {\n function __resumeProject({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.containers.projects.v1.project',\n method: 'POST' as any,\n methodFqn: 'wix.containers.projects.v1.ContainersProjects.ResumeProject',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixContainersProjectsV1ContainersProjectsUrl({\n protoPath: '/v1/projects/{projectId}/resume',\n data: payload,\n host,\n }),\n data: payload,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: TRANSFORM_PATHS_0,\n },\n ]),\n };\n\n return metadata;\n }\n\n return __resumeProject;\n}\n\n/**\n * Generates a candidate display name for a Project from a user instruction, via the published\n * \"Regenerate app name\" Prompt Hub prompt. The current name and the project's description are\n * resolved server-side; the caller supplies only the instruction. Does not persist the result —\n * the caller saves an accepted name with UpdateProject.\n */\nexport function regenerateProjectName(\n payload: object\n): RequestOptionsFactory<any> {\n function __regenerateProjectName({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.containers.projects.v1.project',\n method: 'POST' as any,\n methodFqn:\n 'wix.containers.projects.v1.ContainersProjects.RegenerateProjectName',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixContainersProjectsV1ContainersProjectsUrl({\n protoPath: '/v1/projects/{projectId}/regenerate-name',\n data: payload,\n host,\n }),\n data: payload,\n };\n\n return metadata;\n }\n\n return __regenerateProjectName;\n}\n\n/**\n * Generates a candidate icon for a Project from a user instruction. The current project name,\n * icon, app description, and brand colors are resolved server-side. Does not persist the result —\n * the caller saves an accepted icon with UpdateProject.\n */\nexport function regenerateProjectIcon(\n payload: object\n): RequestOptionsFactory<any> {\n function __regenerateProjectIcon({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.containers.projects.v1.project',\n method: 'POST' as any,\n methodFqn:\n 'wix.containers.projects.v1.ContainersProjects.RegenerateProjectIcon',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixContainersProjectsV1ContainersProjectsUrl({\n protoPath: '/v1/projects/{projectId}/regenerate-icon',\n data: payload,\n host,\n }),\n data: payload,\n };\n\n return metadata;\n }\n\n return __regenerateProjectIcon;\n}\n\n/**\n * Persists a complete design-token document as a new Himalaya draft release, branched from the\n * release the client currently has displayed.\n *\n * Synchronous: the Himalaya write completes before this call returns. Never touches the project's\n * sandbox, runs a build, or activates the app — the saved release stays a draft, so what the live\n * app serves is unaffected. Persists no entity of its own. When `conversation_id` is supplied it\n * posts a CHECKPOINT message for the saved release into that conversation (best-effort — a chat\n * failure never fails the save); omit it to skip the checkpoint.\n */\nexport function saveProjectDesign(payload: object): RequestOptionsFactory<any> {\n function __saveProjectDesign({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.containers.projects.v1.project',\n method: 'POST' as any,\n methodFqn:\n 'wix.containers.projects.v1.ContainersProjects.SaveProjectDesign',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixContainersProjectsV1ContainersProjectsUrl({\n protoPath: '/v1/projects/{projectId}/save-design',\n data: payload,\n host,\n }),\n data: payload,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: TRANSFORM_PATHS_2,\n },\n ]),\n };\n\n return metadata;\n }\n\n return __saveProjectDesign;\n}\n\n/**\n * Restores an earlier version by pointing the project's editable head at `release_id`: the client\n * then previews that release and the next edit (design save or AI edit) branches from it. Pure\n * project state — sets `head_release_id` and nothing in Himalaya: it does NOT activate the release,\n * so the live app end-users run is untouched (a later publish/build is what carries head live).\n *\n * `release_id` is a Himalaya release id the caller already holds from the project's own release\n * ledger, scoped to this project's app; the server stores it as head without re-reading Himalaya.\n * When `conversation_id` is supplied, a CHECKPOINT message for the restored release is posted into\n * it (best-effort — a chat failure never fails the restore); omit it to skip the checkpoint.\n */\nexport function restoreRelease(payload: object): RequestOptionsFactory<any> {\n function __restoreRelease({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.containers.projects.v1.project',\n method: 'POST' as any,\n methodFqn: 'wix.containers.projects.v1.ContainersProjects.RestoreRelease',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixContainersProjectsV1ContainersProjectsUrl({\n protoPath: '/v1/projects/{projectId}/restore-release',\n data: payload,\n host,\n }),\n data: payload,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: TRANSFORM_PATHS_0,\n },\n ]),\n };\n\n return metadata;\n }\n\n return __restoreRelease;\n}\n\n/**\n * Lists the Projects of the current site — the MetaSite in the call scope — regardless of who owns\n * them. Anyone with access to the site sees the site's projects; other sites in the same account are\n * separate tenants and never appear here. The dashboard uses this; ListProjectsForCurrentUser stays\n * owner-scoped for callers that still depend on it.\n */\nexport function listProjects(payload: object): RequestOptionsFactory<any> {\n function __listProjects({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.containers.projects.v1.project',\n method: 'GET' as any,\n methodFqn: 'wix.containers.projects.v1.ContainersProjects.ListProjects',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixContainersProjectsV1ContainersProjectsUrl({\n protoPath: '/v1/projects',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload),\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: TRANSFORM_PATHS_3,\n },\n ]),\n };\n\n return metadata;\n }\n\n return __listProjects;\n}\n\n/**\n * Repeats authenticated Himalaya authorization for the current collaborator. This response is\n * a capability check only; every worker/design mutation performs a fresh check.\n */\nexport function getHimalayaAuthorization(\n payload: object\n): RequestOptionsFactory<any> {\n function __getHimalayaAuthorization({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.containers.projects.v1.project',\n method: 'GET' as any,\n methodFqn:\n 'wix.containers.projects.v1.ContainersProjects.GetHimalayaAuthorization',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixContainersProjectsV1ContainersProjectsUrl({\n protoPath: '/v1/projects/{projectId}/himalaya-authorization',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload),\n };\n\n return metadata;\n }\n\n return __getHimalayaAuthorization;\n}\n","import { HttpClient, NonNullablePaths } from '@wix/sdk-types';\nimport {\n GetHimalayaAuthorizationResponse,\n ListProjectsOptions,\n ListProjectsResponse,\n Project,\n RegenerateProjectIconResponse,\n RegenerateProjectNameResponse,\n RestoreReleaseOptions,\n RestoreReleaseResponse,\n ResumeProjectResponse,\n SaveProjectDesignOptions,\n SaveProjectDesignResponse,\n UpdateProject,\n createProject as universalCreateProject,\n deleteProject as universalDeleteProject,\n getHimalayaAuthorization as universalGetHimalayaAuthorization,\n getProject as universalGetProject,\n listProjects as universalListProjects,\n regenerateProjectIcon as universalRegenerateProjectIcon,\n regenerateProjectName as universalRegenerateProjectName,\n restoreRelease as universalRestoreRelease,\n resumeProject as universalResumeProject,\n saveProjectDesign as universalSaveProjectDesign,\n updateProject as universalUpdateProject,\n} from './containers-projects-v1-project-projects.universal.js';\n\nexport const __metadata = { PACKAGE_NAME: '@wix/containers' };\n\n/** @internal */\nexport function createProject(httpClient: HttpClient): CreateProjectSignature {\n return (project: NonNullablePaths<Project, `platform` | `templateId`, 0>) =>\n universalCreateProject(\n project,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface CreateProjectSignature {\n /**\n * Creates a new Project from a template.\n * Looks up the template to find its backing source code, creates a dev-center app,\n * registers an AppProject, clones the template's git repository into a new\n * code-store project, and persists the Project.\n * @param - Project to be created.\n * @returns The created Project.\n */\n (project: NonNullablePaths<Project, `platform` | `templateId`, 0>): Promise<\n NonNullablePaths<\n Project,\n `name` | `status` | `sandboxStatus` | `metaSiteIds` | `platform`,\n 0\n >\n >;\n}\n\nexport function getProject(httpClient: HttpClient): GetProjectSignature {\n return (projectId: string) =>\n universalGetProject(\n projectId,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface GetProjectSignature {\n /**\n * Retrieves a Project by ID.\n * @param - ID of the Project to retrieve.\n * @returns The requested Project.\n */\n (projectId: string): Promise<\n NonNullablePaths<\n Project,\n `name` | `status` | `sandboxStatus` | `metaSiteIds` | `platform`,\n 0\n >\n >;\n}\n\n/** @internal */\nexport function updateProject(httpClient: HttpClient): UpdateProjectSignature {\n return (\n _id: string,\n project: NonNullablePaths<UpdateProject, `revision`, 0>\n ) =>\n universalUpdateProject(\n _id,\n project,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface UpdateProjectSignature {\n /**\n * Updates an existing Project.\n * @param - Project ID.\n * @returns Updated Project.\n */\n (\n _id: string,\n project: NonNullablePaths<UpdateProject, `revision`, 0>\n ): Promise<\n NonNullablePaths<\n Project,\n `name` | `status` | `sandboxStatus` | `metaSiteIds` | `platform`,\n 0\n >\n >;\n}\n\n/** @internal */\nexport function deleteProject(httpClient: HttpClient): DeleteProjectSignature {\n return (projectId: string) =>\n universalDeleteProject(\n projectId,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface DeleteProjectSignature {\n /**\n * Deletes a Project.\n * @param - Id of the Project to delete.\n */\n (projectId: string): Promise<void>;\n}\n\nexport function resumeProject(httpClient: HttpClient): ResumeProjectSignature {\n return (projectId: string) =>\n universalResumeProject(\n projectId,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface ResumeProjectSignature {\n /**\n * Requests Project resume by starting or reusing its configured remote machine asynchronously.\n * @param - ID of the Project to resume.\n */\n (projectId: string): Promise<\n NonNullablePaths<\n ResumeProjectResponse,\n | `project.name`\n | `project.status`\n | `project.sandboxStatus`\n | `project.metaSiteIds`\n | `project.platform`,\n 1\n >\n >;\n}\n\n/** @internal */\nexport function regenerateProjectName(\n httpClient: HttpClient\n): RegenerateProjectNameSignature {\n return (projectId: string, prompt: string) =>\n universalRegenerateProjectName(\n projectId,\n prompt,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface RegenerateProjectNameSignature {\n /**\n * Generates a candidate display name for a Project from a user instruction, via the published\n * \"Regenerate app name\" Prompt Hub prompt. The current name and the project's description are\n * resolved server-side; the caller supplies only the instruction. Does not persist the result —\n * the caller saves an accepted name with UpdateProject.\n * @param - ID of the Project to generate a new name for.\n * @param - The user's free-text renaming instruction, passed to the name-generation prompt.\n */\n (projectId: string, prompt: string): Promise<\n NonNullablePaths<RegenerateProjectNameResponse, `name`, 0>\n >;\n}\n\n/** @internal */\nexport function regenerateProjectIcon(\n httpClient: HttpClient\n): RegenerateProjectIconSignature {\n return (projectId: string, prompt: string) =>\n universalRegenerateProjectIcon(\n projectId,\n prompt,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface RegenerateProjectIconSignature {\n /**\n * Generates a candidate icon for a Project from a user instruction. The current project name,\n * icon, app description, and brand colors are resolved server-side. Does not persist the result —\n * the caller saves an accepted icon with UpdateProject.\n * @param - ID of the Project to generate a new icon for.\n * @param - The user's free-text icon instruction, passed to the icon-generation prompt.\n */\n (projectId: string, prompt: string): Promise<\n NonNullablePaths<RegenerateProjectIconResponse, `iconUrl`, 0>\n >;\n}\n\nexport function saveProjectDesign(\n httpClient: HttpClient\n): SaveProjectDesignSignature {\n return (\n projectId: string,\n baseReleaseId: string,\n options?: NonNullablePaths<\n SaveProjectDesignOptions,\n `himalayaControlToken` | `tokensJson`,\n 0\n >\n ) =>\n universalSaveProjectDesign(\n projectId,\n baseReleaseId,\n options,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface SaveProjectDesignSignature {\n /**\n * Persists a complete design-token document as a new Himalaya draft release, branched from the\n * release the client currently has displayed.\n *\n * Synchronous: the Himalaya write completes before this call returns. Never touches the project's\n * sandbox, runs a build, or activates the app — the saved release stays a draft, so what the live\n * app serves is unaffected. Persists no entity of its own. When `conversation_id` is supplied it\n * posts a CHECKPOINT message for the saved release into that conversation (best-effort — a chat\n * failure never fails the save); omit it to skip the checkpoint.\n * @param - Project whose design is being saved. The caller must own it.\n * @param - The Himalaya release ID currently displayed by the client. The saved draft branches from\n * exactly this release, even when a newer release exists for the app.\n */\n (\n projectId: string,\n baseReleaseId: string,\n options?: NonNullablePaths<\n SaveProjectDesignOptions,\n `himalayaControlToken` | `tokensJson`,\n 0\n >\n ): Promise<\n NonNullablePaths<\n SaveProjectDesignResponse,\n `himalayaReleaseId` | `previewToken`,\n 0\n >\n >;\n}\n\nexport function restoreRelease(\n httpClient: HttpClient\n): RestoreReleaseSignature {\n return (\n projectId: string,\n releaseId: string,\n options?: RestoreReleaseOptions\n ) =>\n universalRestoreRelease(\n projectId,\n releaseId,\n options,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface RestoreReleaseSignature {\n /**\n * Restores an earlier version by pointing the project's editable head at `release_id`: the client\n * then previews that release and the next edit (design save or AI edit) branches from it. Pure\n * project state — sets `head_release_id` and nothing in Himalaya: it does NOT activate the release,\n * so the live app end-users run is untouched (a later publish/build is what carries head live).\n *\n * `release_id` is a Himalaya release id the caller already holds from the project's own release\n * ledger, scoped to this project's app; the server stores it as head without re-reading Himalaya.\n * When `conversation_id` is supplied, a CHECKPOINT message for the restored release is posted into\n * it (best-effort — a chat failure never fails the restore); omit it to skip the checkpoint.\n * @param - Project whose head is being moved. The caller must own it.\n * @param - The Himalaya release to make the project's editable head. Not a GUID — a Himalaya release id\n * (e.g. `rel-<hash>` / `<sha>-<hash>`), taken from the project's own release ledger.\n */\n (\n projectId: string,\n releaseId: string,\n options?: RestoreReleaseOptions\n ): Promise<\n NonNullablePaths<\n RestoreReleaseResponse,\n | `project.name`\n | `project.status`\n | `project.sandboxStatus`\n | `project.metaSiteIds`\n | `project.platform`,\n 1\n >\n >;\n}\n\n/** @internal */\nexport function listProjects(httpClient: HttpClient): ListProjectsSignature {\n return (options?: ListProjectsOptions) =>\n universalListProjects(\n options,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface ListProjectsSignature {\n /**\n * Lists the Projects of the current site — the MetaSite in the call scope — regardless of who owns\n * them. Anyone with access to the site sees the site's projects; other sites in the same account are\n * separate tenants and never appear here. The dashboard uses this; ListProjectsForCurrentUser stays\n * owner-scoped for callers that still depend on it.\n */\n (options?: ListProjectsOptions): Promise<\n NonNullablePaths<\n ListProjectsResponse,\n | `projects`\n | `projects.${number}.name`\n | `projects.${number}.status`\n | `projects.${number}.sandboxStatus`\n | `projects.${number}.platform`,\n 2\n >\n >;\n}\n\nexport function getHimalayaAuthorization(\n httpClient: HttpClient\n): GetHimalayaAuthorizationSignature {\n return (projectId: string) =>\n universalGetHimalayaAuthorization(\n projectId,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface GetHimalayaAuthorizationSignature {\n /**\n * Repeats authenticated Himalaya authorization for the current collaborator. This response is\n * a capability check only; every worker/design mutation performs a fresh check.\n * @param - Site-tenanted Containers project being authorized.\n */\n (projectId: string): Promise<\n NonNullablePaths<\n GetHimalayaAuthorizationResponse,\n | `authorizationVersion`\n | `metaSiteId`\n | `projectId`\n | `canonicalApp`\n | `workerLaunch`\n | `saveDesign`,\n 0\n >\n >;\n}\n\nexport {\n AccountInfo,\n ActionEvent,\n CreateAgentSessionRequest,\n CreateAgentSessionResponse,\n CreateProjectRequest,\n CreateProjectResponse,\n CursorPaging,\n CursorPagingMetadata,\n Cursors,\n DeleteProjectRequest,\n DeleteProjectResponse,\n DomainEvent,\n DomainEventBodyOneOf,\n EntityCreatedEvent,\n EntityDeletedEvent,\n EntityUpdatedEvent,\n GetHimalayaAuthorizationRequest,\n GetHimalayaAuthorizationResponse,\n GetProjectRequest,\n GetProjectResponse,\n IdentificationData,\n IdentificationDataIdOneOf,\n ListProjectsForCurrentUserRequest,\n ListProjectsForCurrentUserResponse,\n ListProjectsOptions,\n ListProjectsRequest,\n ListProjectsResponse,\n MessageEnvelope,\n Platform,\n Project,\n ProjectPlanReady,\n ProjectResumeRequested,\n ProjectStartRequested,\n ProjectStatus,\n RefreshAgentSiteTokenRequest,\n RefreshAgentSiteTokenResponse,\n RegenerateProjectIconRequest,\n RegenerateProjectIconResponse,\n RegenerateProjectNameRequest,\n RegenerateProjectNameResponse,\n RestoreInfo,\n RestoreReleaseOptions,\n RestoreReleaseRequest,\n RestoreReleaseResponse,\n ResumeProjectRequest,\n ResumeProjectResponse,\n SandboxStatus,\n SaveProjectDesignOptions,\n SaveProjectDesignRequest,\n SaveProjectDesignResponse,\n StartProjectRequest,\n StartProjectResponse,\n UpdateProject,\n UpdateProjectRequest,\n UpdateProjectResponse,\n WebhookIdentityType,\n} from './containers-projects-v1-project-projects.universal.js';\n","import {\n createProject as publicCreateProject,\n getProject as publicGetProject,\n updateProject as publicUpdateProject,\n deleteProject as publicDeleteProject,\n resumeProject as publicResumeProject,\n regenerateProjectName as publicRegenerateProjectName,\n regenerateProjectIcon as publicRegenerateProjectIcon,\n saveProjectDesign as publicSaveProjectDesign,\n restoreRelease as publicRestoreRelease,\n listProjects as publicListProjects,\n getHimalayaAuthorization as publicGetHimalayaAuthorization,\n} from './containers-projects-v1-project-projects.public.js';\nimport { createRESTModule } from '@wix/sdk-runtime/rest-modules';\nimport { BuildRESTFunction, MaybeContext } from '@wix/sdk-types';\n\n/** @internal */\nexport const createProject: MaybeContext<\n BuildRESTFunction<typeof publicCreateProject> & typeof publicCreateProject\n> = /*#__PURE__*/ createRESTModule(publicCreateProject);\nexport const getProject: MaybeContext<\n BuildRESTFunction<typeof publicGetProject> & typeof publicGetProject\n> = /*#__PURE__*/ createRESTModule(publicGetProject);\n/** @internal */\nexport const updateProject: MaybeContext<\n BuildRESTFunction<typeof publicUpdateProject> & typeof publicUpdateProject\n> = /*#__PURE__*/ createRESTModule(publicUpdateProject);\n/** @internal */\nexport const deleteProject: MaybeContext<\n BuildRESTFunction<typeof publicDeleteProject> & typeof publicDeleteProject\n> = /*#__PURE__*/ createRESTModule(publicDeleteProject);\nexport const resumeProject: MaybeContext<\n BuildRESTFunction<typeof publicResumeProject> & typeof publicResumeProject\n> = /*#__PURE__*/ createRESTModule(publicResumeProject);\n/** @internal */\nexport const regenerateProjectName: MaybeContext<\n BuildRESTFunction<typeof publicRegenerateProjectName> &\n typeof publicRegenerateProjectName\n> = /*#__PURE__*/ createRESTModule(publicRegenerateProjectName);\n/** @internal */\nexport const regenerateProjectIcon: MaybeContext<\n BuildRESTFunction<typeof publicRegenerateProjectIcon> &\n typeof publicRegenerateProjectIcon\n> = /*#__PURE__*/ createRESTModule(publicRegenerateProjectIcon);\nexport const saveProjectDesign: MaybeContext<\n BuildRESTFunction<typeof publicSaveProjectDesign> &\n typeof publicSaveProjectDesign\n> = /*#__PURE__*/ createRESTModule(publicSaveProjectDesign);\nexport const restoreRelease: MaybeContext<\n BuildRESTFunction<typeof publicRestoreRelease> & typeof publicRestoreRelease\n> = /*#__PURE__*/ createRESTModule(publicRestoreRelease);\n/** @internal */\nexport const listProjects: MaybeContext<\n BuildRESTFunction<typeof publicListProjects> & typeof publicListProjects\n> = /*#__PURE__*/ createRESTModule(publicListProjects);\nexport const getHimalayaAuthorization: MaybeContext<\n BuildRESTFunction<typeof publicGetHimalayaAuthorization> &\n typeof publicGetHimalayaAuthorization\n> = /*#__PURE__*/ createRESTModule(publicGetHimalayaAuthorization);\n\nexport {\n ProjectStatus,\n SandboxStatus,\n Platform,\n WebhookIdentityType,\n} from './containers-projects-v1-project-projects.universal.js';\nexport {\n Project,\n ProjectStartRequested,\n ProjectResumeRequested,\n ProjectPlanReady,\n CreateAgentSessionRequest,\n CreateAgentSessionResponse,\n RefreshAgentSiteTokenRequest,\n RefreshAgentSiteTokenResponse,\n DomainEvent,\n DomainEventBodyOneOf,\n EntityCreatedEvent,\n RestoreInfo,\n EntityUpdatedEvent,\n EntityDeletedEvent,\n ActionEvent,\n MessageEnvelope,\n IdentificationData,\n IdentificationDataIdOneOf,\n AccountInfo,\n CreateProjectRequest,\n CreateProjectResponse,\n GetProjectRequest,\n GetProjectResponse,\n UpdateProjectRequest,\n UpdateProjectResponse,\n DeleteProjectRequest,\n DeleteProjectResponse,\n StartProjectRequest,\n StartProjectResponse,\n ResumeProjectRequest,\n ResumeProjectResponse,\n RegenerateProjectNameRequest,\n RegenerateProjectNameResponse,\n RegenerateProjectIconRequest,\n RegenerateProjectIconResponse,\n ListProjectsForCurrentUserRequest,\n CursorPaging,\n ListProjectsForCurrentUserResponse,\n CursorPagingMetadata,\n Cursors,\n SaveProjectDesignRequest,\n SaveProjectDesignResponse,\n RestoreReleaseRequest,\n RestoreReleaseResponse,\n ListProjectsRequest,\n ListProjectsResponse,\n GetHimalayaAuthorizationRequest,\n GetHimalayaAuthorizationResponse,\n UpdateProject,\n SaveProjectDesignOptions,\n RestoreReleaseOptions,\n ListProjectsOptions,\n} from './containers-projects-v1-project-projects.universal.js';\nexport {\n ProjectStatusWithLiterals,\n SandboxStatusWithLiterals,\n PlatformWithLiterals,\n WebhookIdentityTypeWithLiterals,\n} from './containers-projects-v1-project-projects.universal.js';\n"],"mappings":"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","names":["createProject","deleteProject","getHimalayaAuthorization","getProject","listProjects","regenerateProjectIcon","regenerateProjectName","restoreRelease","resumeProject","saveProjectDesign","updateProject","import_timestamp","import_rest_modules","payload","ProjectStatus","SandboxStatus","Platform","WebhookIdentityType","createProject","sdkTransformError","getProject","updateProject","deleteProject","resumeProject","regenerateProjectName","regenerateProjectIcon","saveProjectDesign","restoreRelease","listProjects","getHimalayaAuthorization","createProject","getProject","updateProject","deleteProject","resumeProject","regenerateProjectName","regenerateProjectIcon","saveProjectDesign","restoreRelease","listProjects","getHimalayaAuthorization","import_rest_modules","createProject","getProject","updateProject","deleteProject","resumeProject","regenerateProjectName","regenerateProjectIcon","saveProjectDesign","restoreRelease","listProjects","getHimalayaAuthorization"]}