@sayren/store-sdk 0.35.0 → 0.37.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.mjs CHANGED
@@ -1878,7 +1878,8 @@ const sellerAddressRequestSchema = z.object({
1878
1878
  * - 502 `STOREFRONT_SANDBOX_UNAVAILABLE` — 편집 Sandbox 호출이 실패했다. 잠시 뒤 다시 한다
1879
1879
  *
1880
1880
  * 소스 내려받기·올리기(#60, `/v1/storefront/site/source/**`, `sayren` CLI):
1881
- * - 409 `SOURCE_CHANGED` — 작업 트리가 내려받은 뒤(`expectedBaseRef`) 바뀌었다(상점 플랫폼·AI 편집). `error.details.currentRef`
1881
+ * - 409 `SOURCE_CHANGED` — 작업 트리가 내려받은 뒤(`expectedBaseRef`) 바뀌었고 같은 파일을 서로 다르게 고쳤다(상점 플랫폼·AI 편집). 겹치지 않으면 서버가
1882
+ * 3-way 병합한다(응답 `merged`). `error.details.currentRef`·`conflicts`(충돌 파일)
1882
1883
  * - 409 `EDIT_SESSION_OPEN` — 편집 환경이 열려 있다. `endEditSession: true`로 끄고 진행할 수 있다
1883
1884
  * - 409 `SOURCE_BLOBS_MISSING` — 올리지 않은 파일 내용이 있다(`error.details.hashes`). `POST source/blobs`로 올리고 다시 한다
1884
1885
  * - 409 `DEPENDENCY_REJECTED` — 쓸 수 없는 npm 의존성이다(`error.details.rejected: [{ name, version, reason, detail }]`)
@@ -2022,7 +2023,9 @@ const storefrontVersionSchema = z.object({
2022
2023
  source: z.enum(["TEMPLATE", "EDIT"]).describe("`TEMPLATE` 템플릿 산출물 그대로 · `EDIT` 편집 작업 트리를 빌드함"),
2023
2024
  buildId: z.string().nullable().describe("편집 버전의 빌드 (`GET /v1/storefront/site/builds/{buildId}`). 템플릿 버전은 null"),
2024
2025
  createdByType: z.string().describe("만든 행위자 유형 (`USER`·`AGENT`·`APP`·`TOKEN`·`SYSTEM`). 늘어날 수 있다"),
2025
- createdVia: z.string().nullable().optional().describe("만든 경로 (`CONSOLE` 상점 플랫폼 · `AI` AI 에이전트(MCP) · `CLI` `sayren` CLI · `API` 관리 API · `SYSTEM` 자동). 늘어날 수 있다"),
2026
+ createdVia: z.string().nullable().optional().describe("만든 경로 (`CONSOLE` 상점 플랫폼 · `AI` AI 에이전트(MCP) · `CLI` `sayren` CLI · `API` 관리 API · `SYSTEM` 자동 · `GIT` 연결한 저장소 push). 늘어날 수 있다"),
2027
+ gitRef: z.string().nullable().optional().describe("연결한 저장소의 push로 만든 버전의 브랜치. 그 밖은 null"),
2028
+ commitSha: z.string().nullable().optional().describe("이 버전 소스를 담은 저장소 커밋(Git 원천 사이트). 저장소에 없는 버전은 null"),
2026
2029
  createdAt: z.string().describe("만든 시각 (ISO 8601)"),
2027
2030
  previewable: z.boolean().optional().describe("미리보기 주소로 열 수 있는가 (`POST /v1/storefront/site/preview-link`의 `versionId`). 보관 기간이 지난 버전은 false")
2028
2031
  });
@@ -2074,6 +2077,7 @@ const storefrontSiteSnapshotSchema = z.object({
2074
2077
  });
2075
2078
  const storefrontSiteSchema = z.object({
2076
2079
  siteId: z.string(),
2080
+ deployWithoutApproval: z.boolean().optional().describe("승인 없이 배포 — 켜져 있으면 AI 에이전트의 발행·되돌리기가 승인 없이 실행된다. 상점 플랫폼에서 OWNER·ADMIN만 바꾼다"),
2077
2081
  slug: z.string().describe("주소 슬러그"),
2078
2082
  hostname: z.string().describe("대표 호스트 이름"),
2079
2083
  url: z.string().describe("대표 주소 (`https://{hostname}`)"),
@@ -2801,7 +2805,7 @@ const storefrontSourceBlobsResultSchema = z.object({
2801
2805
  * `package.json`·`pnpm-lock.yaml`도 바꿀 수 있고 의존성은 허용 목록 안이어야 한다. `.env*`·작업 트리 밖 경로는 받지 않는다.
2802
2806
  */
2803
2807
  const replaceStorefrontSourceRequestSchema = z.object({
2804
- expectedBaseRef: storefrontSourceRefSchema.optional().describe("내려받은 작업 트리. 지금 작업 트리가 이 값일 때만 바꾼다. 생략하면 조건 없이 덮어쓴다"),
2808
+ expectedBaseRef: storefrontSourceRefSchema.optional().describe("내려받은 작업 트리. 그 뒤 작업 트리가 바뀌었으면 이 트리를 기준으로 3-way 병합하고, 같은 곳을 고쳤으면 409 `SOURCE_CHANGED`다. 생략하면 조건 없이 덮어쓴다"),
2805
2809
  files: z.array(z.object({
2806
2810
  path: storefrontFilePathSchema,
2807
2811
  hash: storefrontFileHashSchema,
@@ -2812,15 +2816,60 @@ const replaceStorefrontSourceRequestSchema = z.object({
2812
2816
  lockfile: z.string().max(STOREFRONT_FILE_MAX_BYTES).optional().describe("`files`에 `pnpm-lock.yaml`이 있으면 그 내용(utf8)")
2813
2817
  });
2814
2818
  const storefrontSourceReplacedSchema = z.object({
2815
- sourceRef: storefrontSourceRefSchema.describe("새 작업 트리 — 다음 올리기의 `expectedBaseRef`"),
2819
+ sourceRef: storefrontSourceRefSchema.describe("새 작업 트리(버전 만들기의 `expectedSourceRef`). 다음 올리기의 기준은 `uploadedRef`다"),
2816
2820
  previousRef: z.string().describe("바꾸기 전 작업 트리"),
2817
2821
  treeSha256: z.string(),
2818
2822
  files: z.number().int().min(0),
2819
2823
  bytes: z.number().int().min(0),
2820
2824
  changed: z.boolean().describe("내용이 바뀌었는가 (같은 트리를 다시 올리면 false)"),
2825
+ merged: z.boolean().optional().describe("내려받은 뒤 바뀐 작업 트리와 3-way 병합해 결과가 올린 목록과 다른가(서버 쪽 변경이 함께 남는다). 같은 곳을 고쳤으면 409 `SOURCE_CHANGED`(`details.conflicts` 충돌 파일)"),
2826
+ uploadedRef: storefrontSourceRefSchema.optional().describe("올린 목록 그대로의 트리 — 다음 올리기의 `expectedBaseRef`(클라이언트가 가진 트리). 병합하지 않았으면 `sourceRef`와 같다"),
2821
2827
  endedEditSession: z.boolean().describe("열린 편집 환경을 끄고 진행했는가"),
2822
2828
  dependencyWarnings: z.array(storefrontDependencyFindingSchema).describe("배포를 막지 않는 의존성 경고 (보안 권고 등)")
2823
2829
  });
2830
+ /**
2831
+ * `GET /v1/storefront/site/git` — 사이트의 Git 원천. 발행한 소스는 GitHub 저장소 main에 있다(사내 저장소 또는 셀러가 연결한 저장소).
2832
+ * 연결 전이면 필드가 null이다
2833
+ */
2834
+ const storefrontGitStatusSchema = z.object({
2835
+ provider: z.enum(["GITHUB"]).nullable().describe("Git 원천이 켜져 있으면 `GITHUB`, 아니면 null"),
2836
+ owner: z.enum(["SAYREN", "SELLER"]).nullable().describe("`SAYREN` sayren이 관리하는 저장소 · `SELLER` 셀러가 연결한 저장소"),
2837
+ repository: z.string().nullable().describe("연결한 셀러 저장소(`owner/name`). sayren 저장소면 null"),
2838
+ productionBranch: z.string().nullable().describe("운영 배포 브랜치"),
2839
+ rootDirectory: z.string().nullable().describe("저장소 안 사이트 루트(빈 문자열 = 저장소 루트)"),
2840
+ connectedAt: z.string().nullable().describe("원천이 켜진 시각 (ISO 8601)"),
2841
+ headCommitSha: z.string().nullable().describe("운영 브랜치의 마지막 커밋"),
2842
+ mainChanged: z.boolean().describe("발행 전 작업이 지금 운영 브랜치 위가 아니다 — 발행하려면 최신 운영 브랜치를 합친 버전을 만든다(아니면 409 `STOREFRONT_MAIN_CHANGED`)"),
2843
+ autoPromotePaused: z.boolean().describe("되돌린 상태 — 저장소 push는 빌드만 하고 운영을 바꾸지 않는다. 버전을 발행하면 다시 켜진다"),
2844
+ publishPending: z.boolean().describe("발행한 버전을 운영 브랜치에 올리는 중"),
2845
+ publishErrorCode: z.string().nullable().describe("마지막 발행을 운영 브랜치에 올리지 못한 이유(브랜치 보호 등). 운영과 저장소가 다를 수 있다"),
2846
+ archivedWorkRef: z.string().nullable().describe("셀러 저장소를 연결할 때 보관한 발행 전 작업 트리(연결 전 편집). 없으면 null")
2847
+ });
2848
+ const storefrontGitRepositorySchema = z.object({
2849
+ repoId: z.number().int().describe("GitHub 저장소 id"),
2850
+ fullName: z.string().describe("`owner/name`"),
2851
+ defaultBranch: z.string()
2852
+ });
2853
+ /** `POST /v1/storefront/site/git/installations` — GitHub App 설치 화면에서 돌아온 값(`installation_id`·`code`) */
2854
+ const linkStorefrontGitInstallationRequestSchema = z.object({
2855
+ installationId: z.number().int().positive(),
2856
+ code: z.string().min(1).max(200).describe("설치 화면이 돌려준 GitHub 사용자 인증 코드(한 번만 쓴다)"),
2857
+ state: z.string().min(1).max(200).describe("설치 화면으로 보내기 전에 받은 연결 state(`POST …/git/installations/state`, 한 번만 쓴다)")
2858
+ });
2859
+ /** `POST /v1/storefront/site/git/installations/state` — GitHub 설치 화면에 싣는 1회용 state(이 상점·사용자, 10분) */
2860
+ const storefrontGitConnectStateSchema = z.object({
2861
+ state: z.string(),
2862
+ expiresAt: z.string()
2863
+ });
2864
+ /** `POST /v1/storefront/site/git/connect` */
2865
+ const connectStorefrontGitRequestSchema = z.object({
2866
+ installationId: z.number().int().positive(),
2867
+ repoId: z.number().int().positive(),
2868
+ productionBranch: z.string().min(1).max(200).regex(/^[A-Za-z0-9._-]+(\/[A-Za-z0-9._-]+)*$/).optional().describe("운영 배포 브랜치(생략하면 저장소 기본 브랜치)"),
2869
+ rootDirectory: z.string().max(200).regex(/^$|^[A-Za-z0-9._-]+(\/[A-Za-z0-9._-]+)*$/).refine((v) => !v.split("/").some((seg) => seg === "." || seg === ".."), "상대 경로만").optional().describe("저장소 안 사이트 루트(생략하면 저장소 루트)")
2870
+ });
2871
+ /** `PUT /v1/storefront/site/deploy-approval` — 승인 없이 배포(#138) */
2872
+ const setStorefrontDeployApprovalRequestSchema = z.object({ deployWithoutApproval: z.boolean() });
2824
2873
  //#endregion
2825
2874
  //#region src/schemas/ai.ts
2826
2875
  /**
@@ -4449,6 +4498,23 @@ const infoSectionRequestSchema = z.object({
4449
4498
  body: z.string().default(""),
4450
4499
  bodyJson: z.string().nullable().optional()
4451
4500
  });
4501
+ /**
4502
+ * 안내 섹션 번역 (이슈 #134) — 언어 하나의 제목·본문. 섹션 필드는 상점 기본 언어 값이다. 비운 칸(null)은 스토어프론트가 기본 언어 값으로 대체한다.
4503
+ * 섹션을 연결한 모든 상품이 같은 번역을 보인다.
4504
+ */
4505
+ const infoSectionLocalizationSchema = z.object({
4506
+ locale: z.string().describe("언어(BCP 47)"),
4507
+ title: z.string().nullable(),
4508
+ body: z.string().nullable().describe("본문 HTML(상세설명과 같은 정화 규칙). null이면 기본 언어 본문"),
4509
+ bodyJson: z.string().nullable(),
4510
+ updatedAt: z.string()
4511
+ });
4512
+ /** `PUT /v1/info-sections/{infoSectionId}/localizations/{locale}` 본문 — 레코드 전체를 바꾼다. 빠진 칸은 null이다 */
4513
+ const infoSectionLocalizationRequestSchema = z.strictObject({
4514
+ title: z.string().trim().min(1).max(100).nullable().optional(),
4515
+ body: z.string().nullable().optional(),
4516
+ bodyJson: z.string().nullable().optional()
4517
+ });
4452
4518
  //#endregion
4453
4519
  //#region src/schemas/stay.ts
4454
4520
  /**
@@ -4651,7 +4717,11 @@ const productSummarySchema = z.object({
4651
4717
  hasOptions: z.boolean(),
4652
4718
  fulfillment: z.object({ type: fulfillmentTypeResponseSchema }).describe("상품 이행의 유형. 유형별 속성은 단건 조회(`GET /v1/products/{productId}`)의 `fulfillment`에 있다"),
4653
4719
  updatedAt: z.string(),
4654
- sample: z.boolean().optional().default(false).describe("상점을 만들 때 넣은 샘플 상품인가(이슈 #70). 상점 플랫폼이 「샘플」 배지를 단다. 스토어프론트에는 싣지 않는다. 서버는 항상 싣는다")
4720
+ sample: z.boolean().optional().default(false).describe("상점을 만들 때 넣은 샘플 상품인가(이슈 #70). 상점 플랫폼이 「샘플」 배지를 단다. 스토어프론트에는 싣지 않는다. 서버는 항상 싣는다"),
4721
+ localizations: z.array(z.object({
4722
+ locale: z.string().describe("언어(BCP 47)"),
4723
+ needsTranslation: z.boolean().describe("번역할 칸이 비었는가(`productLocalizationNeedsTranslation`과 같은 규칙)")
4724
+ })).optional().default([]).describe("번역 레코드가 있는 언어(이슈 #134). 상점 기본 언어는 싣지 않는다")
4655
4725
  });
4656
4726
  /** 옵션 축(그룹)이 가지는 값 하나 — 예: 축 "색상"의 값 "블랙" */
4657
4727
  const optionValueSchema = z.object({
@@ -4851,7 +4921,7 @@ const discountSchema = z.object({
4851
4921
  startAt: z.string().nullable(),
4852
4922
  endAt: z.string().nullable()
4853
4923
  });
4854
- const productSchema = productSummarySchema.extend({
4924
+ const productSchema = productSummarySchema.omit({ localizations: true }).extend({
4855
4925
  prices: z.array(storedProductCurrencyPriceSchema).optional().describe("외화 판매가(이슈 #130). 기본 통화 값은 `salePrice`·`originalPrice`다"),
4856
4926
  description: z.string().optional(),
4857
4927
  /**
@@ -7103,6 +7173,25 @@ const collectionPreviewSchema = z.object({
7103
7173
  products: z.array(collectionProductSchema).describe("앞 20개(정렬 순)"),
7104
7174
  salesComputedAt: z.string().nullable().default(null).describe("판매량 기준 시각. 판매량 상위 조건이나 판매량순 정렬을 쓰면 이 시각까지의 주문을 센다. 판매량을 쓰지 않거나 집계 전이면 null")
7105
7175
  });
7176
+ /**
7177
+ * 컬렉션 번역 (이슈 #134) — 언어 하나의 제목·설명·SEO. 컬렉션 필드는 상점 기본 언어 값이고 번역 레코드가 언어별 값이다.
7178
+ * 비운 칸(null)은 스토어프론트가 기본 언어 값으로 대체한다(칸 단위 대체).
7179
+ */
7180
+ const collectionLocalizationSchema = z.object({
7181
+ locale: z.string().describe("언어(BCP 47)"),
7182
+ title: z.string().nullable().describe("제목. null이면 기본 언어 제목"),
7183
+ description: z.string().nullable(),
7184
+ metaTitle: z.string().nullable(),
7185
+ metaDescription: z.string().nullable(),
7186
+ updatedAt: z.string()
7187
+ });
7188
+ /** `PUT /v1/collections/{collectionId}/localizations/{locale}` 본문 — 레코드 전체를 바꾼다. 빠진 칸은 null(기본 언어 값으로 대체)이다 */
7189
+ const collectionLocalizationRequestSchema = z.strictObject({
7190
+ title: z.string().trim().min(1).max(60).nullable().optional(),
7191
+ description: z.string().trim().max(500).nullable().optional(),
7192
+ metaTitle: z.string().trim().max(60).nullable().optional(),
7193
+ metaDescription: z.string().trim().max(160).nullable().optional()
7194
+ });
7106
7195
  //#endregion
7107
7196
  //#region src/schemas/commerce-flow.ts
7108
7197
  /**
@@ -9490,6 +9579,187 @@ const purchaseDecisionExtendResultSchema = z.object({
9490
9579
  */
9491
9580
  const addressChangeRequestListSchema = z.array(z.record(z.string(), z.unknown())).describe("배송지 변경 요청 목록 (현재 항상 빈 배열)");
9492
9581
  //#endregion
9582
+ //#region src/schemas/subscription.ts
9583
+ /**
9584
+ * 요금제·구독 — `GET /v1/store/subscription`(스코프 `store:r`). 구독 단위는 상점이다.
9585
+ * 결제 수단·청구 금액은 싣지 않는다. 요금제 변경은 상점 플랫폼에서만 한다.
9586
+ */
9587
+ /** 요금제 코드 — 이름(`plan.name`)이 바뀌어도 코드는 바뀌지 않는다. 값은 추가만 한다 */
9588
+ const planCodeSchema = z.enum([
9589
+ "BETA",
9590
+ "FREE",
9591
+ "BASIC",
9592
+ "PRO",
9593
+ "BUSINESS",
9594
+ "ENTERPRISE",
9595
+ "PREMIUM"
9596
+ ]).describe("요금제 코드. `FREE`=Free, `PRO`=Pro, `PREMIUM`=프리미엄, `ENTERPRISE`=엔터프라이즈, `BETA`=베타(운영 오픈 기간). `BASIC`·`BUSINESS`는 2026-09-30 이전 요금제(더 쓰지 않는다)");
9597
+ /**
9598
+ * 응답의 요금제 코드 — 아는 코드(`PlanCode`)거나 이 SDK가 모르는 새 코드(문자열)다. 요금제 코드는 추가될 수 있어 응답 파싱을 깨지 않게
9599
+ * 넓게 받는다(옛 SDK는 새 코드를 모르면 파싱에 실패했다, #44 리뷰 M3). 요청에는 `planCodeSchema`를 쓴다
9600
+ */
9601
+ const responsePlanCodeSchema = z.union([planCodeSchema, z.string()]).describe(planCodeSchema.description ?? "요금제 코드");
9602
+ const subscriptionStatusSchema = z.enum([
9603
+ "ACTIVE",
9604
+ "PAST_DUE",
9605
+ "CANCELED",
9606
+ "INCOMPLETE"
9607
+ ]).describe("구독 상태. `ACTIVE`=이용 중, `PAST_DUE`=결제 실패 후 유예 중, `CANCELED`=해지됨, `INCOMPLETE`=첫 결제 대기");
9608
+ const limit = (description) => z.number().int().nullable().describe(`${description}. null이면 한도 없음`);
9609
+ const subscriptionLimitsSchema = z.object({
9610
+ liveOrdersMonthly: limit("더 쓰지 않는다 — 라이브 주문 수로 요금제를 나누지 않아 항상 null"),
9611
+ seatsIncluded: limit("구성원 석 — 구성원은 모든 요금제에서 무료·무제한이라 null"),
9612
+ aiActionsMonthly: limit("MCP(에이전트) 쓰기(AI 작업) 월 한도"),
9613
+ aiReadsMonthly: limit("MCP(에이전트) 읽기 월 한도"),
9614
+ customDomains: limit("내 도메인 수"),
9615
+ webhooks: limit("웹훅 구독 수(0이면 쓸 수 없다)"),
9616
+ socialProviders: limit("더 쓰지 않는다 — 소셜 로그인 공급자 수로 요금제를 나누지 않아 항상 null"),
9617
+ emailsMonthly: limit("더 쓰지 않는다 — 메일 한도가 없어 항상 null"),
9618
+ storefrontRequestsMonthly: limit("스토어프론트 월 트래픽(요청 수, 넘어도 막지 않고 안내만)"),
9619
+ apiLogRetentionDays: limit("API 로그 보관 일수(0이면 API 로그 없음)"),
9620
+ auditLogRetentionDays: limit("감사 로그 보관 일수"),
9621
+ storefrontPreviewHoursMonthly: limit("스토어프론트 편집 미리보기 월 시간"),
9622
+ storefrontBuildMinutesMonthly: limit("스토어프론트 빌드 월 분"),
9623
+ adminApiRequestsMonthly: limit("관리 API 요청 월 포함량(넘으면 속도만 낮춘다, 주문 처리 제외)"),
9624
+ publicApps: limit("공개 앱(앱 스토어에 게시된 앱) 설치 수").optional(),
9625
+ privateApps: limit("비공개 앱(이 상점 전용 앱) 설치 수(0이면 설치할 수 없다)").optional(),
9626
+ aiCreditsMonthly: limit("AI 상점 도우미 월 크레딧").optional()
9627
+ });
9628
+ const subscriptionUsageSchema = z.object({
9629
+ liveOrders: z.number().int().describe("이번 기간 라이브 주문 수(테스트 결제 주문 제외)"),
9630
+ aiActions: z.number().int().describe("이번 기간 MCP(에이전트) 쓰기(AI 작업) 수"),
9631
+ aiReads: z.number().int().describe("이번 기간 MCP(에이전트) 읽기 수"),
9632
+ storefrontRequests: z.number().int().describe("이번 기간 스토어프론트 요청 수"),
9633
+ adminApiRequests: z.number().int().describe("이번 기간 관리 API 요청 수(API 토큰·앱·에이전트 호출, 상점 플랫폼 제외)"),
9634
+ emails: z.number().int().describe("이번 기간 초대·양도 알림 메일 수(한도 없음, 표시만)"),
9635
+ storefrontPreviewMinutes: z.number().int().describe("이번 기간 편집 미리보기 분(끝난 세션)"),
9636
+ storefrontBuildMinutes: z.number().int().describe("이번 기간 빌드 분(끝난 빌드)"),
9637
+ seats: z.number().int().describe("현재 석 수 — 구성원(OWNER 포함) + 대기 중 초대"),
9638
+ customDomains: z.number().int().describe("현재 내 도메인 수(해제한 도메인 제외)"),
9639
+ webhooks: z.number().int().describe("현재 웹훅 구독 수"),
9640
+ publicApps: z.number().int().optional().describe("현재 설치한 공개 앱 수"),
9641
+ privateApps: z.number().int().optional().describe("현재 설치한 비공개 앱 수")
9642
+ });
9643
+ const storeSubscriptionSchema = z.object({
9644
+ plan: z.object({
9645
+ code: responsePlanCodeSchema,
9646
+ name: z.string().describe("요금제 표시 이름(예: 프로)")
9647
+ }),
9648
+ status: subscriptionStatusSchema,
9649
+ interval: z.enum(["MONTH"]).nullable().describe("결제 주기. `MONTH`=월간. 요금을 내지 않는 요금제(베타·무료)는 null"),
9650
+ cancelAtPeriodEnd: z.boolean().describe("기간 끝에 해지 예정인가"),
9651
+ period: z.object({
9652
+ start: z.string().describe("사용량 기간 시작(ISO 8601)"),
9653
+ end: z.string().describe("사용량 기간 끝(ISO 8601, 이 시각에 사용량이 초기화된다)")
9654
+ }).describe("사용량을 세는 기간. 요금을 내지 않는 요금제는 한국 시간 달력 월이다"),
9655
+ limits: subscriptionLimitsSchema,
9656
+ features: z.object({
9657
+ adminApi: z.boolean().describe("관리 API(개인 액세스 토큰·외부 앱 토큰 호출)를 쓸 수 있다"),
9658
+ analytics: z.boolean().describe("애널리틱스 조회를 쓸 수 있다"),
9659
+ members: z.boolean().optional().describe("소유자 외 구성원이 상점에 접근할 수 있다(false면 소유자만, 구성원 목록은 남는다)"),
9660
+ storeClone: z.boolean().describe("더 쓰지 않는다 — 상점 복제 기능을 없애 항상 false"),
9661
+ removeBadge: z.boolean().describe("더 쓰지 않는다 — 배지 키를 없애 항상 false")
9662
+ }),
9663
+ usage: subscriptionUsageSchema,
9664
+ aiActions: z.object({
9665
+ limit: z.number().int().nullable(),
9666
+ used: z.number().int(),
9667
+ resetsAt: z.string().describe("한도가 초기화되는 시각(ISO 8601)")
9668
+ }).describe("AI 작업(MCP 쓰기) 한도 요약 — 에이전트가 남은 작업 수를 판단할 때 쓴다"),
9669
+ aiReads: z.object({
9670
+ limit: z.number().int().nullable(),
9671
+ used: z.number().int(),
9672
+ resetsAt: z.string().describe("한도가 초기화되는 시각(ISO 8601)")
9673
+ }).describe("MCP 읽기 한도 요약"),
9674
+ aiCredits: z.object({
9675
+ monthly: z.number().int().nullable().describe("요금제 월 크레딧. null이면 한도 없음"),
9676
+ granted: z.number().int().describe("이번 기간에 쓸 수 있는 추가 지급 크레딧"),
9677
+ used: z.number().int().describe("이번 기간 사용한 크레딧"),
9678
+ monthlyUsed: z.number().int().optional().describe("이번 기간 월 크레딧에서 쓴 양"),
9679
+ purchased: z.number().int().optional().describe("남은 구매 크레딧 — 구매일부터 1년, 월 크레딧이 초기화돼도 남는다"),
9680
+ complimentary: z.number().int().optional().describe("남은 무상 지급 크레딧(이벤트·보상)"),
9681
+ remaining: z.number().int().nullable().describe("남은 크레딧(월 + 구매 + 무상). null이면 한도 없음"),
9682
+ resetsAt: z.string().describe("월 크레딧이 초기화되는 시각(ISO 8601). 월 크레딧은 이월하지 않는다")
9683
+ }).optional().describe("AI 상점 도우미 크레딧 — 1 크레딧은 모델 원가 $0.01. 남은 크레딧이 없으면 새 실행을 만들 수 없다"),
9684
+ salesFeePercent: z.literal(0).describe("판매 수수료(%). 모든 요금제 0이다")
9685
+ });
9686
+ /**
9687
+ * 요금제 한도 오류의 `error.details` — 기존 오류 코드(`STORE_LIMIT_EXCEEDED`·`STOREFRONT_DOMAIN_LIMIT`·`WEBHOOK_LIMIT_EXCEEDED` 등)와
9688
+ * 요금제 오류(`PLAN_LIMIT_EXCEEDED`·`PLAN_AI_ACTIONS_EXCEEDED`·`PLAN_AI_READS_EXCEEDED`·`PLAN_FEATURE_REQUIRED`·`PLAN_API_QUOTA_EXCEEDED`)가 같은 형식을 싣는다.
9689
+ * 모든 필드가 선택이다(기존 코드는 요금제 판정 전 필드만 실을 수 있다).
9690
+ */
9691
+ const planErrorDetailsSchema = z.object({
9692
+ feature: z.string().optional().describe("한도에 닿은 기능 키(예: `limits.ai_actions_monthly`)"),
9693
+ limit: z.number().nullable().optional(),
9694
+ used: z.number().optional(),
9695
+ plan: responsePlanCodeSchema.optional(),
9696
+ resetsAt: z.string().optional().describe("월 한도가 초기화되는 시각(ISO 8601)"),
9697
+ upgradeUrl: z.string().optional().describe("요금제 화면 주소(상점 플랫폼)"),
9698
+ reason: z.string().optional().describe("상점 수 한도의 이유 — `OWNED_STORES`(소유 상점 수). `FREE_STORES`는 더 쓰지 않는다")
9699
+ }).loose();
9700
+ //#endregion
9701
+ //#region src/schemas/plans.ts
9702
+ /**
9703
+ * 요금제 비교표 — `GET /v1/public/plans`(인증 없음). 요금제마다 가격과 기능 키 값을 준다. 값은 서버가 관리하고(사내 어드민 게시) 언제든
9704
+ * 바뀔 수 있으니 코드에 요금제 수치를 두지 않는다. 상점 하나의 구독·사용량은 `subscription.ts`다
9705
+ */
9706
+ const limitOrContract = (description) => z.number().int().nullable().describe(`${description}. null이면 계약(엔터프라이즈)·한도 없음`);
9707
+ /**
9708
+ * 요금제 기능 키 값 — 요금제 비교표·상점 플랫폼 요금제 화면이 쓴다. 키는 서버 판정의 기능 키와 같다(추가만 한다). 상위 요금제는 하위 요금제
9709
+ * 기능을 모두 포함한다
9710
+ */
9711
+ const planEntitlementsSchema = z.object({
9712
+ "features.members": z.boolean().describe("소유자 외 구성원(관리자·직원)의 초대와 상점 접근. false면 소유자만 쓴다"),
9713
+ "features.admin_api": z.boolean().describe("관리 API(개인 액세스 토큰·외부 앱 토큰 호출). 상점 플랫폼·CLI·MCP는 모든 요금제에서 쓴다"),
9714
+ "features.analytics": z.boolean().describe("애널리틱스 화면·조회 API"),
9715
+ "limits.ai_reads_monthly": limitOrContract("MCP 읽기 월 한도"),
9716
+ "limits.ai_actions_monthly": limitOrContract("MCP 쓰기(AI 작업) 월 한도 — 주문 처리는 막지 않는다"),
9717
+ "limits.custom_domains": limitOrContract("내 도메인 수"),
9718
+ "limits.webhooks": limitOrContract("웹훅 구독 수(0이면 쓸 수 없다)"),
9719
+ "limits.public_apps": limitOrContract("공개 앱(앱 스토어 게시 앱) 설치 수"),
9720
+ "limits.private_apps": limitOrContract("비공개 앱(이 상점 전용 앱) 설치 수(0이면 설치할 수 없다)"),
9721
+ "limits.ai_credits_monthly": limitOrContract("AI 상점 도우미 월 크레딧(1 크레딧 = 모델 원가 $0.01, 이월 없음)"),
9722
+ "limits.storefront_preview_hours_monthly": limitOrContract("편집 환경 시간(월, 시간)"),
9723
+ "limits.storefront_build_minutes_monthly": limitOrContract("빌드 시간(월, 분)"),
9724
+ "limits.storefront_requests_monthly": limitOrContract("스토어프론트 월 트래픽(요청 수) — 넘어도 막지 않고 안내만 한다"),
9725
+ "limits.admin_api_requests_monthly": limitOrContract("관리 API 월 요청 — 넘으면 속도만 낮춘다(주문 처리 제외)"),
9726
+ "rate_limit.admin_api": z.number().nullable().describe("관리 API 분당 속도 배수(기본 분당 600 × 배수)"),
9727
+ "storefront.cpu_ms": z.number().int().describe("스토어프론트 사이트 요청당 CPU 상한(ms)"),
9728
+ "storefront.subrequests": z.number().int().describe("스토어프론트 사이트 요청당 하위 요청 상한"),
9729
+ "storefront.rate_limit_per_minute": z.number().int().describe("스토어프론트 남용 방지 요청 속도 상한(사이트당 분당)"),
9730
+ "seats.included": limitOrContract("포함 구성원 석 — 구성원은 모든 요금제에서 무료·무제한이라 null"),
9731
+ "retention.analytics_days": z.number().int().describe("애널리틱스 보관 일수"),
9732
+ "retention.api_logs_days": limitOrContract("API 로그 보관 일수(0이면 API 로그 없음)"),
9733
+ "retention.audit_days": limitOrContract("감사 로그 보관 일수"),
9734
+ "support.tier": z.union([z.enum([
9735
+ "COMMUNITY",
9736
+ "EMAIL",
9737
+ "EMAIL_PRIORITY",
9738
+ "DEDICATED",
9739
+ "SLA"
9740
+ ]), z.string()]).describe("지원 등급(`COMMUNITY`·`EMAIL`·`EMAIL_PRIORITY`·`DEDICATED`·`SLA`, 새 등급이 더해질 수 있다)")
9741
+ }).describe("요금제 기능 키 값");
9742
+ /** 공개 요금제 한 줄 — `GET /v1/public/plans` */
9743
+ const publicPlanSchema = z.object({
9744
+ code: responsePlanCodeSchema,
9745
+ name: z.string().describe("표시 이름(Free·Pro·프리미엄·엔터프라이즈)"),
9746
+ version: z.number().int().describe("요금제 버전 — 값이 바뀌면 새 버전이 게시된다"),
9747
+ sort: z.number().int(),
9748
+ purchasable: z.boolean().describe("셀프 결제로 고를 수 있는가(Free·엔터프라이즈는 아니다 — 엔터프라이즈는 계약)"),
9749
+ prices: z.object({
9750
+ currency: z.literal("KRW"),
9751
+ monthly: z.number().int().nullable().describe("월 가격(공급가, 부가세 별도)"),
9752
+ startingAt: z.boolean().describe("「부터」 가격(엔터프라이즈 계약)"),
9753
+ vatIncluded: z.object({ monthly: z.number().int().nullable() }).describe("표시 가격(부가세 포함) — 요금제 비교표는 이 값을 보인다")
9754
+ }),
9755
+ entitlements: planEntitlementsSchema
9756
+ });
9757
+ /** 요금제 비교표 — `GET /v1/public/plans`(인증 없음, 캐시 가능). 값은 서버가 관리하고 언제든 바뀔 수 있다 */
9758
+ const publicPlansSchema = z.object({
9759
+ vatPercent: z.number().int().describe("부가세율(%)"),
9760
+ plans: z.array(publicPlanSchema).describe("공개 요금제의 지금 버전 — 정렬 순")
9761
+ });
9762
+ //#endregion
9493
9763
  //#region src/schemas/product-localization.ts
9494
9764
  /**
9495
9765
  * 상품 번역 (이슈 #134) — 언어 하나의 상품명·상세설명·이미지·옵션 이름. 상품 필드는 상점 기본 언어 값이고 번역 레코드가 언어별 값이다.
@@ -9510,8 +9780,13 @@ const translatedCustomInputSchema = z.object({
9510
9780
  label: z.string().nullable().describe("항목명. null이면 기본 언어 항목명"),
9511
9781
  placeholder: z.string().nullable().describe("입력 안내. null이면 기본 언어 안내")
9512
9782
  });
9783
+ const translatedNoticeValueSchema = z.object({
9784
+ key: z.string().describe("고시 칸 키"),
9785
+ label: z.string().describe("칸 이름(원문)"),
9786
+ value: z.string().nullable().describe("셀러 값 번역. null이면 기본 언어 값")
9787
+ });
9513
9788
  /**
9514
- * 조회 응답 — 지금 상품의 옵션명·값·직접 입력 항목을 모두 싣고 번역하지 않은 칸은 null이다.
9789
+ * 조회 응답 — 지금 상품의 옵션명·값·직접 입력 항목, 셀러가 적은 고시 칸을 모두 싣고 번역하지 않은 칸은 null이다.
9515
9790
  * `optionGroups`는 조합 옵션, `addonGroups`는 추가 선택이다(상품 응답과 같은 구분)
9516
9791
  */
9517
9792
  const productLocalizationSchema = z.object({
@@ -9523,6 +9798,7 @@ const productLocalizationSchema = z.object({
9523
9798
  optionGroups: z.array(translatedOptionGroupSchema),
9524
9799
  addonGroups: z.array(translatedOptionGroupSchema),
9525
9800
  customInputs: z.array(translatedCustomInputSchema),
9801
+ notice: z.array(translatedNoticeValueSchema).optional().default([]).describe("셀러가 적은 상품정보제공 고시 칸의 값 번역(이슈 #134). 출처·법정 문구 칸은 싣지 않는다"),
9526
9802
  updatedAt: z.string()
9527
9803
  });
9528
9804
  const translatedNameSchema = z.string().trim().min(1).max(50).nullable().optional();
@@ -9550,8 +9826,24 @@ const productLocalizationRequestSchema = z.strictObject({
9550
9826
  inputId: z.string(),
9551
9827
  label: z.string().trim().min(1).max(30).nullable().optional(),
9552
9828
  placeholder: z.string().trim().min(1).max(100).nullable().optional()
9553
- })).optional()
9829
+ })).optional(),
9830
+ notice: z.array(z.strictObject({
9831
+ key: z.string(),
9832
+ value: z.string().trim().min(1).max(MAX_NOTICE_VALUE_LENGTH).nullable().optional()
9833
+ })).optional().describe("고시 칸 값 번역. 상품에 셀러 값이 없는 칸 키는 400 `PRODUCT_LOCALIZATION_TARGET_NOT_FOUND`")
9554
9834
  });
9835
+ /**
9836
+ * 번역할 칸이 비었는가(이슈 #134, 2026-10-18 결정: 완성도 대신 「번역 필요」 표시만) — 상품명, 기본 언어에 본문이 있는 상세설명,
9837
+ * 옵션명·값·직접 입력 항목명, 셀러가 적은 고시 칸. 이미지·입력 안내는 기본 언어 값을 그대로 써도 되는 칸이라 세지 않는다.
9838
+ * 상점 플랫폼(상품 수정·목록)과 관리 목록 응답이 같은 함수다
9839
+ */
9840
+ function productLocalizationNeedsTranslation(localization, base) {
9841
+ if (!localization.name) return true;
9842
+ if ((base.description ?? "").trim() && !localization.description) return true;
9843
+ if ([...localization.optionGroups, ...localization.addonGroups].some((group) => !group.name || group.values.some((value) => !value.name))) return true;
9844
+ if (localization.customInputs.some((item) => !item.label)) return true;
9845
+ return (localization.notice ?? []).some((entry) => !entry.value);
9846
+ }
9555
9847
  //#endregion
9556
9848
  //#region src/schemas/saved-option-set.ts
9557
9849
  /**
@@ -9664,6 +9956,47 @@ const savedOptionSetListQuerySchema = z.object({
9664
9956
  maxSize: 200
9665
9957
  })
9666
9958
  });
9959
+ /**
9960
+ * 저장 옵션 번역 (이슈 #134) — 저장 옵션에는 id가 없어 **기본 언어 이름이 키**다(`baseName`·`baseLabel`).
9961
+ * 상품이 불러올 때 상품 번역으로 함께 복사하고(상품 저장 트랜잭션), 그 뒤로는 상품 번역이 원천이다 — 저장 옵션 번역을 고쳐도
9962
+ * 이미 불러온 상품은 그대로다. 기본 언어 이름을 바꾸면 그 이름의 번역은 읽지 않는다.
9963
+ */
9964
+ const savedOptionSetLocalizationSchema = z.object({
9965
+ locale: z.string().describe("언어(BCP 47)"),
9966
+ groups: z.array(z.object({
9967
+ baseName: z.string().describe("기본 언어 옵션명"),
9968
+ name: z.string().nullable().describe("번역 옵션명. null이면 기본 언어 이름"),
9969
+ values: z.array(z.object({
9970
+ baseName: z.string(),
9971
+ name: z.string().nullable()
9972
+ }))
9973
+ })),
9974
+ customInputs: z.array(z.object({
9975
+ baseLabel: z.string().describe("기본 언어 항목명"),
9976
+ label: z.string().nullable(),
9977
+ placeholder: z.string().nullable()
9978
+ })),
9979
+ updatedAt: z.string()
9980
+ });
9981
+ /**
9982
+ * `PUT /v1/saved-option-sets/{optionSetId}/localizations/{locale}` 본문 — 레코드 전체를 바꾼다. 번역할 이름만 보낸다.
9983
+ * 저장 옵션에 없는 기본 언어 이름은 400 `OPTION_SET_LOCALIZATION_TARGET_NOT_FOUND`, 번역 이름 중복은 상품과 같은 규칙으로 400 `INVALID_OPTION_MODEL`이다
9984
+ */
9985
+ const savedOptionSetLocalizationRequestSchema = z.strictObject({
9986
+ groups: z.array(z.strictObject({
9987
+ baseName: z.string(),
9988
+ name: nameSchema.nullable().optional(),
9989
+ values: z.array(z.strictObject({
9990
+ baseName: z.string(),
9991
+ name: nameSchema.nullable().optional()
9992
+ })).optional()
9993
+ })).optional(),
9994
+ customInputs: z.array(z.strictObject({
9995
+ baseLabel: z.string(),
9996
+ label: z.string().trim().min(1).max(30).nullable().optional(),
9997
+ placeholder: z.string().trim().min(1).max(100).nullable().optional()
9998
+ })).optional()
9999
+ });
9667
10000
  //#endregion
9668
10001
  //#region src/schemas/starter.ts
9669
10002
  /**
@@ -9785,161 +10118,6 @@ const starterStatusSchema = z.object({
9785
10118
  orders: z.object({ count: z.number().int().min(0).describe("주문 수 (결제 모드를 가리지 않는다)") })
9786
10119
  });
9787
10120
  //#endregion
9788
- //#region src/schemas/subscription.ts
9789
- /**
9790
- * 요금제·구독 — `GET /v1/store/subscription`(스코프 `store:r`). 구독 단위는 상점이다.
9791
- * 결제 수단·청구 금액은 싣지 않는다. 요금제 변경은 상점 플랫폼에서만 한다.
9792
- */
9793
- /** 요금제 코드 — 이름(`plan.name`)이 바뀌어도 코드는 바뀌지 않는다. 값은 추가만 한다 */
9794
- const planCodeSchema = z.enum([
9795
- "BETA",
9796
- "FREE",
9797
- "BASIC",
9798
- "PRO",
9799
- "BUSINESS",
9800
- "ENTERPRISE",
9801
- "PREMIUM"
9802
- ]).describe("요금제 코드. `FREE`=Free, `PRO`=Pro, `PREMIUM`=프리미엄, `ENTERPRISE`=엔터프라이즈, `BETA`=베타(운영 오픈 기간). `BASIC`·`BUSINESS`는 2026-09-30 이전 요금제(더 쓰지 않는다)");
9803
- /**
9804
- * 응답의 요금제 코드 — 아는 코드(`PlanCode`)거나 이 SDK가 모르는 새 코드(문자열)다. 요금제 코드는 추가될 수 있어 응답 파싱을 깨지 않게
9805
- * 넓게 받는다(옛 SDK는 새 코드를 모르면 파싱에 실패했다, #44 리뷰 M3). 요청에는 `planCodeSchema`를 쓴다
9806
- */
9807
- const responsePlanCodeSchema = z.union([planCodeSchema, z.string()]).describe(planCodeSchema.description ?? "요금제 코드");
9808
- const subscriptionStatusSchema = z.enum([
9809
- "ACTIVE",
9810
- "PAST_DUE",
9811
- "CANCELED",
9812
- "INCOMPLETE"
9813
- ]).describe("구독 상태. `ACTIVE`=이용 중, `PAST_DUE`=결제 실패 후 유예 중, `CANCELED`=해지됨, `INCOMPLETE`=첫 결제 대기");
9814
- const limit = (description) => z.number().int().nullable().describe(`${description}. null이면 한도 없음`);
9815
- const subscriptionLimitsSchema = z.object({
9816
- liveOrdersMonthly: limit("더 쓰지 않는다 — 라이브 주문 수로 요금제를 나누지 않아 항상 null"),
9817
- seatsIncluded: limit("구성원 석 — 구성원은 모든 요금제에서 무료·무제한이라 null"),
9818
- aiActionsMonthly: limit("MCP(에이전트) 쓰기(AI 작업) 월 한도"),
9819
- aiReadsMonthly: limit("MCP(에이전트) 읽기 월 한도"),
9820
- customDomains: limit("내 도메인 수"),
9821
- webhooks: limit("웹훅 구독 수(0이면 쓸 수 없다)"),
9822
- socialProviders: limit("더 쓰지 않는다 — 소셜 로그인 공급자 수로 요금제를 나누지 않아 항상 null"),
9823
- emailsMonthly: limit("더 쓰지 않는다 — 메일 한도가 없어 항상 null"),
9824
- storefrontRequestsMonthly: limit("스토어프론트 월 트래픽(요청 수, 넘어도 막지 않고 안내만)"),
9825
- apiLogRetentionDays: limit("API 로그 보관 일수(0이면 API 로그 없음)"),
9826
- auditLogRetentionDays: limit("감사 로그 보관 일수"),
9827
- storefrontPreviewHoursMonthly: limit("스토어프론트 편집 미리보기 월 시간"),
9828
- storefrontBuildMinutesMonthly: limit("스토어프론트 빌드 월 분"),
9829
- adminApiRequestsMonthly: limit("관리 API 요청 월 포함량(넘으면 속도만 낮춘다, 주문 처리 제외)")
9830
- });
9831
- const subscriptionUsageSchema = z.object({
9832
- liveOrders: z.number().int().describe("이번 기간 라이브 주문 수(테스트 결제 주문 제외)"),
9833
- aiActions: z.number().int().describe("이번 기간 MCP(에이전트) 쓰기(AI 작업) 수"),
9834
- aiReads: z.number().int().describe("이번 기간 MCP(에이전트) 읽기 수"),
9835
- storefrontRequests: z.number().int().describe("이번 기간 스토어프론트 요청 수"),
9836
- adminApiRequests: z.number().int().describe("이번 기간 관리 API 요청 수(API 토큰·앱·에이전트 호출, 상점 플랫폼 제외)"),
9837
- emails: z.number().int().describe("이번 기간 초대·양도 알림 메일 수(한도 없음, 표시만)"),
9838
- storefrontPreviewMinutes: z.number().int().describe("이번 기간 편집 미리보기 분(끝난 세션)"),
9839
- storefrontBuildMinutes: z.number().int().describe("이번 기간 빌드 분(끝난 빌드)"),
9840
- seats: z.number().int().describe("현재 석 수 — 구성원(OWNER 포함) + 대기 중 초대"),
9841
- customDomains: z.number().int().describe("현재 내 도메인 수(해제한 도메인 제외)"),
9842
- webhooks: z.number().int().describe("현재 웹훅 구독 수")
9843
- });
9844
- const storeSubscriptionSchema = z.object({
9845
- plan: z.object({
9846
- code: responsePlanCodeSchema,
9847
- name: z.string().describe("요금제 표시 이름(예: 프로)")
9848
- }),
9849
- status: subscriptionStatusSchema,
9850
- interval: z.enum(["MONTH"]).nullable().describe("결제 주기. `MONTH`=월간. 요금을 내지 않는 요금제(베타·무료)는 null"),
9851
- cancelAtPeriodEnd: z.boolean().describe("기간 끝에 해지 예정인가"),
9852
- period: z.object({
9853
- start: z.string().describe("사용량 기간 시작(ISO 8601)"),
9854
- end: z.string().describe("사용량 기간 끝(ISO 8601, 이 시각에 사용량이 초기화된다)")
9855
- }).describe("사용량을 세는 기간. 요금을 내지 않는 요금제는 한국 시간 달력 월이다"),
9856
- limits: subscriptionLimitsSchema,
9857
- features: z.object({
9858
- adminApi: z.boolean().describe("관리 API(개인 액세스 토큰·외부 앱 토큰 호출)를 쓸 수 있다"),
9859
- analytics: z.boolean().describe("애널리틱스 조회를 쓸 수 있다"),
9860
- storeClone: z.boolean().describe("더 쓰지 않는다 — 상점 복제 기능을 없애 항상 false"),
9861
- removeBadge: z.boolean().describe("더 쓰지 않는다 — 배지 키를 없애 항상 false")
9862
- }),
9863
- usage: subscriptionUsageSchema,
9864
- aiActions: z.object({
9865
- limit: z.number().int().nullable(),
9866
- used: z.number().int(),
9867
- resetsAt: z.string().describe("한도가 초기화되는 시각(ISO 8601)")
9868
- }).describe("AI 작업(MCP 쓰기) 한도 요약 — 에이전트가 남은 작업 수를 판단할 때 쓴다"),
9869
- aiReads: z.object({
9870
- limit: z.number().int().nullable(),
9871
- used: z.number().int(),
9872
- resetsAt: z.string().describe("한도가 초기화되는 시각(ISO 8601)")
9873
- }).describe("MCP 읽기 한도 요약"),
9874
- salesFeePercent: z.literal(0).describe("판매 수수료(%). 모든 요금제 0이다")
9875
- });
9876
- /**
9877
- * 요금제 한도 오류의 `error.details` — 기존 오류 코드(`STORE_LIMIT_EXCEEDED`·`STOREFRONT_DOMAIN_LIMIT`·`WEBHOOK_LIMIT_EXCEEDED` 등)와
9878
- * 요금제 오류(`PLAN_LIMIT_EXCEEDED`·`PLAN_AI_ACTIONS_EXCEEDED`·`PLAN_AI_READS_EXCEEDED`·`PLAN_FEATURE_REQUIRED`·`PLAN_API_QUOTA_EXCEEDED`)가 같은 형식을 싣는다.
9879
- * 모든 필드가 선택이다(기존 코드는 요금제 판정 전 필드만 실을 수 있다).
9880
- */
9881
- const planErrorDetailsSchema = z.object({
9882
- feature: z.string().optional().describe("한도에 닿은 기능 키(예: `limits.ai_actions_monthly`)"),
9883
- limit: z.number().nullable().optional(),
9884
- used: z.number().optional(),
9885
- plan: responsePlanCodeSchema.optional(),
9886
- resetsAt: z.string().optional().describe("월 한도가 초기화되는 시각(ISO 8601)"),
9887
- upgradeUrl: z.string().optional().describe("요금제 화면 주소(상점 플랫폼)"),
9888
- reason: z.string().optional().describe("상점 수 한도의 이유 — `OWNED_STORES`(소유 상점 수). `FREE_STORES`는 더 쓰지 않는다")
9889
- }).loose();
9890
- const limitOrContract = (description) => z.number().int().nullable().describe(`${description}. null이면 계약(엔터프라이즈)·한도 없음`);
9891
- /**
9892
- * 요금제 기능 키 값 — 요금제 비교표·상점 플랫폼 요금제 화면이 쓴다. 키는 서버 판정의 기능 키와 같다(추가만 한다). 상위 요금제는 하위 요금제
9893
- * 기능을 모두 포함한다
9894
- */
9895
- const planEntitlementsSchema = z.object({
9896
- "features.admin_api": z.boolean().describe("관리 API(개인 액세스 토큰·외부 앱 토큰 호출). 상점 플랫폼·CLI·MCP는 모든 요금제에서 쓴다"),
9897
- "features.analytics": z.boolean().describe("애널리틱스 화면·조회 API"),
9898
- "limits.ai_reads_monthly": limitOrContract("MCP 읽기 월 한도"),
9899
- "limits.ai_actions_monthly": limitOrContract("MCP 쓰기(AI 작업) 월 한도 — 주문 처리는 막지 않는다"),
9900
- "limits.custom_domains": limitOrContract("내 도메인 수"),
9901
- "limits.webhooks": limitOrContract("웹훅 구독 수(0이면 쓸 수 없다)"),
9902
- "limits.storefront_preview_hours_monthly": limitOrContract("편집 환경 시간(월, 시간)"),
9903
- "limits.storefront_build_minutes_monthly": limitOrContract("빌드 시간(월, 분)"),
9904
- "limits.storefront_requests_monthly": limitOrContract("스토어프론트 월 트래픽(요청 수) — 넘어도 막지 않고 안내만 한다"),
9905
- "limits.admin_api_requests_monthly": limitOrContract("관리 API 월 요청 — 넘으면 속도만 낮춘다(주문 처리 제외)"),
9906
- "rate_limit.admin_api": z.number().nullable().describe("관리 API 분당 속도 배수(기본 분당 600 × 배수)"),
9907
- "storefront.cpu_ms": z.number().int().describe("스토어프론트 사이트 요청당 CPU 상한(ms)"),
9908
- "storefront.subrequests": z.number().int().describe("스토어프론트 사이트 요청당 하위 요청 상한"),
9909
- "storefront.rate_limit_per_minute": z.number().int().describe("스토어프론트 남용 방지 요청 속도 상한(사이트당 분당)"),
9910
- "seats.included": limitOrContract("포함 구성원 석 — 구성원은 모든 요금제에서 무료·무제한이라 null"),
9911
- "retention.analytics_days": z.number().int().describe("애널리틱스 보관 일수"),
9912
- "retention.api_logs_days": limitOrContract("API 로그 보관 일수(0이면 API 로그 없음)"),
9913
- "retention.audit_days": limitOrContract("감사 로그 보관 일수"),
9914
- "support.tier": z.union([z.enum([
9915
- "COMMUNITY",
9916
- "EMAIL",
9917
- "EMAIL_PRIORITY",
9918
- "DEDICATED",
9919
- "SLA"
9920
- ]), z.string()]).describe("지원 등급(`COMMUNITY`·`EMAIL`·`EMAIL_PRIORITY`·`DEDICATED`·`SLA`, 새 등급이 더해질 수 있다)")
9921
- }).describe("요금제 기능 키 값");
9922
- /** 공개 요금제 한 줄 — `GET /v1/public/plans` */
9923
- const publicPlanSchema = z.object({
9924
- code: responsePlanCodeSchema,
9925
- name: z.string().describe("표시 이름(Free·Pro·프리미엄·엔터프라이즈)"),
9926
- version: z.number().int().describe("요금제 버전 — 값이 바뀌면 새 버전이 게시된다"),
9927
- sort: z.number().int(),
9928
- purchasable: z.boolean().describe("셀프 결제로 고를 수 있는가(Free·엔터프라이즈는 아니다 — 엔터프라이즈는 계약)"),
9929
- prices: z.object({
9930
- currency: z.literal("KRW"),
9931
- monthly: z.number().int().nullable().describe("월 가격(공급가, 부가세 별도)"),
9932
- startingAt: z.boolean().describe("「부터」 가격(엔터프라이즈 계약)"),
9933
- vatIncluded: z.object({ monthly: z.number().int().nullable() }).describe("표시 가격(부가세 포함) — 요금제 비교표는 이 값을 보인다")
9934
- }),
9935
- entitlements: planEntitlementsSchema
9936
- });
9937
- /** 요금제 비교표 — `GET /v1/public/plans`(인증 없음, 캐시 가능). 값은 서버가 관리하고 언제든 바뀔 수 있다 */
9938
- const publicPlansSchema = z.object({
9939
- vatPercent: z.number().int().describe("부가세율(%)"),
9940
- plans: z.array(publicPlanSchema).describe("공개 요금제의 지금 버전 — 정렬 순")
9941
- });
9942
- //#endregion
9943
10121
  //#region src/client.ts
9944
10122
  function createStoreClient(options) {
9945
10123
  const fetchFn = options.fetch ?? globalThis.fetch;
@@ -10088,7 +10266,13 @@ function createStoreClient(options) {
10088
10266
  update: (optionSetId, body) => storeHttp.request("PUT", path`/saved-option-sets/${optionSetId}`, savedOptionSetSchema, { body: savedOptionSetRequestSchema.parse(body) }),
10089
10267
  remove: (optionSetId) => storeHttp.requestVoid("DELETE", path`/saved-option-sets/${optionSetId}`),
10090
10268
  /** 상품의 현재 옵션을 저장 옵션으로 만든다(또는 `replaceOptionSetId`를 덮어쓴다) */
10091
- saveFromProduct: (body) => storeHttp.request("POST", "/saved-option-sets/from-product", savedOptionSetFromProductResultSchema, { body: savedOptionSetFromProductRequestSchema.parse(body) })
10269
+ saveFromProduct: (body) => storeHttp.request("POST", "/saved-option-sets/from-product", savedOptionSetFromProductResultSchema, { body: savedOptionSetFromProductRequestSchema.parse(body) }),
10270
+ /** 번역(이슈 #134) — 기본 언어 이름이 키다. 불러올 때 상품 번역으로 복사한다 */
10271
+ localizations: {
10272
+ list: (optionSetId) => storeHttp.request("GET", path`/saved-option-sets/${optionSetId}/localizations`, z.array(savedOptionSetLocalizationSchema)),
10273
+ put: (optionSetId, locale, body) => storeHttp.request("PUT", path`/saved-option-sets/${optionSetId}/localizations/${locale}`, savedOptionSetLocalizationSchema, { body: savedOptionSetLocalizationRequestSchema.parse(body) }),
10274
+ remove: (optionSetId, locale) => storeHttp.requestVoid("DELETE", path`/saved-option-sets/${optionSetId}/localizations/${locale}`)
10275
+ }
10092
10276
  },
10093
10277
  /**
10094
10278
  * 상품정보제공 고시 품목군(이슈 #135) — 플랫폼 코드 표. 현재 버전만 싣는다. 권한은 상품 조회(`product:r`)다
@@ -10105,7 +10289,13 @@ function createStoreClient(options) {
10105
10289
  get: (infoSectionId) => storeHttp.request("GET", path`/info-sections/${infoSectionId}`, infoSectionSchema),
10106
10290
  create: (body) => storeHttp.request("POST", "/info-sections", infoSectionSchema, { body: infoSectionRequestSchema.parse(body) }),
10107
10291
  update: (infoSectionId, body) => storeHttp.request("PUT", path`/info-sections/${infoSectionId}`, infoSectionSchema, { body: infoSectionRequestSchema.parse(body) }),
10108
- remove: (infoSectionId) => storeHttp.requestVoid("DELETE", path`/info-sections/${infoSectionId}`)
10292
+ remove: (infoSectionId) => storeHttp.requestVoid("DELETE", path`/info-sections/${infoSectionId}`),
10293
+ /** 번역(이슈 #134) — 언어별 제목·본문 */
10294
+ localizations: {
10295
+ list: (infoSectionId) => storeHttp.request("GET", path`/info-sections/${infoSectionId}/localizations`, z.array(infoSectionLocalizationSchema)),
10296
+ put: (infoSectionId, locale, body) => storeHttp.request("PUT", path`/info-sections/${infoSectionId}/localizations/${locale}`, infoSectionLocalizationSchema, { body: infoSectionLocalizationRequestSchema.parse(body) }),
10297
+ remove: (infoSectionId, locale) => storeHttp.requestVoid("DELETE", path`/info-sections/${infoSectionId}/localizations/${locale}`)
10298
+ }
10109
10299
  },
10110
10300
  /**
10111
10301
  * 컬렉션 (이슈 #83) — 상품을 어디에 보여 줄지 정하는 묶음(다대다). 권한은 카테고리와 같다(`category:r`·`category:rw`).
@@ -10126,7 +10316,13 @@ function createStoreClient(options) {
10126
10316
  addProducts: (collectionId, body) => storeHttp.request("POST", path`/collections/${collectionId}/products`, collectionSchema, { body: collectionProductsAddRequestSchema.parse(body) }),
10127
10317
  removeProduct: (collectionId, productId) => storeHttp.requestVoid("DELETE", path`/collections/${collectionId}/products/${productId}`),
10128
10318
  /** 조건 자동 미리보기 — 저장하지 않고 조건을 만족하는 판매 중 상품 수와 앞 20개를 본다 */
10129
- preview: (body) => storeHttp.request("POST", "/collections/preview", collectionPreviewSchema, { body: collectionPreviewRequestSchema.parse(body) })
10319
+ preview: (body) => storeHttp.request("POST", "/collections/preview", collectionPreviewSchema, { body: collectionPreviewRequestSchema.parse(body) }),
10320
+ /** 번역(이슈 #134) — 언어별 제목·설명·SEO */
10321
+ localizations: {
10322
+ list: (collectionId) => storeHttp.request("GET", path`/collections/${collectionId}/localizations`, z.array(collectionLocalizationSchema)),
10323
+ put: (collectionId, locale, body) => storeHttp.request("PUT", path`/collections/${collectionId}/localizations/${locale}`, collectionLocalizationSchema, { body: collectionLocalizationRequestSchema.parse(body) }),
10324
+ remove: (collectionId, locale) => storeHttp.requestVoid("DELETE", path`/collections/${collectionId}/localizations/${locale}`)
10325
+ }
10130
10326
  },
10131
10327
  categories: {
10132
10328
  list: (params) => storeHttp.request("GET", "/categories", z.array(categorySchema), { query: params }),
@@ -10863,7 +11059,21 @@ list: (params) => storeHttp.request("GET", "/audit-logs", auditLogPageSchema, {
10863
11059
  * `PUT /v1/storefront/site/source` — 작업 트리 전체를 바꾼다. 409 `SOURCE_CHANGED`(내려받은 뒤 바뀜)·`EDIT_SESSION_OPEN`·
10864
11060
  * `SOURCE_BLOBS_MISSING`(`details.hashes`를 올리고 다시)
10865
11061
  */
10866
- replaceSource: (body) => storeHttp.request("PUT", "/storefront/site/source", storefrontSourceReplacedSchema, { body: replaceStorefrontSourceRequestSchema.parse(body) })
11062
+ replaceSource: (body) => storeHttp.request("PUT", "/storefront/site/source", storefrontSourceReplacedSchema, { body: replaceStorefrontSourceRequestSchema.parse(body) }),
11063
+ /** `PUT /v1/storefront/site/deploy-approval` — 승인 없이 배포(상점 플랫폼 OWNER·ADMIN 전용) */
11064
+ setDeployApproval: (body) => storeHttp.request("PUT", "/storefront/site/deploy-approval", storefrontSiteSchema, { body: setStorefrontDeployApprovalRequestSchema.parse(body) }),
11065
+ /** `GET /v1/storefront/site/git` — Git 원천(발행 소스를 둔 저장소)과 상태(#138) */
11066
+ getGit: () => storeHttp.request("GET", "/storefront/site/git", storefrontGitStatusSchema),
11067
+ /** `POST /v1/storefront/site/git/installations/state` — GitHub 설치 화면에 싣는 1회용 state(상점 플랫폼 전용) */
11068
+ createGitConnectState: () => storeHttp.request("POST", "/storefront/site/git/installations/state", storefrontGitConnectStateSchema),
11069
+ /** `POST /v1/storefront/site/git/installations` — GitHub App 설치 확인(상점 플랫폼 전용) → 그 설치의 저장소 */
11070
+ linkGitInstallation: (body) => storeHttp.request("POST", "/storefront/site/git/installations", z.array(storefrontGitRepositorySchema), { body: linkStorefrontGitInstallationRequestSchema.parse(body) }),
11071
+ /** `GET /v1/storefront/site/git/installations/{installationId}/repositories` — 확인한 설치의 저장소(상점 플랫폼 전용) */
11072
+ listGitRepositories: (installationId) => storeHttp.request("GET", `/storefront/site/git/installations/${encodeURIComponent(String(installationId))}/repositories`, z.array(storefrontGitRepositorySchema)),
11073
+ /** `POST /v1/storefront/site/git/connect` — 셀러 GitHub 저장소 연결(상점 플랫폼 전용) */
11074
+ connectGit: (body) => storeHttp.request("POST", "/storefront/site/git/connect", storefrontGitStatusSchema, { body: connectStorefrontGitRequestSchema.parse(body) }),
11075
+ /** `POST /v1/storefront/site/git/disconnect` — 연결 해제(sayren 저장소로 되돌림, 상점 플랫폼 전용) */
11076
+ disconnectGit: () => storeHttp.request("POST", "/storefront/site/git/disconnect", storefrontGitStatusSchema)
10867
11077
  },
10868
11078
  subscription: {
10869
11079
  /**
@@ -11244,4 +11454,4 @@ function createStoreSession(options) {
11244
11454
  };
11245
11455
  }
11246
11456
  //#endregion
11247
- export { AI_AGENT_NOTES_DIR, AI_AGENT_PHASES, AI_DESIGN_BOARDS_MAX, AI_DESIGN_BOARD_FILE_PATTERN, AI_DESIGN_BOARD_KINDS, AI_DESIGN_CANVAS_PATH, AI_DESIGN_CONFIRM_APPROVE, AI_DESIGN_DIR, AI_DESIGN_VIEWPORTS, AI_MESSAGE_MAX_ATTACHMENTS, AI_MESSAGE_MAX_CHARS, AI_RUN_ACTIVE_STATUSES, AI_RUN_FILE_CHANGES_RETENTION_DAYS, AI_SETUP_CONFIRM_APPROVE, AI_TODOS_MAX, AI_TODO_STATUSES, APPROVAL_ALREADY_DECIDED_CODE, APPROVAL_REQUIRED_CODE, APP_CAPABILITIES, APP_DEPLOY_KEY_PATTERN, APP_DEPLOY_KEY_PREFIX, APP_EVENTS_MAX, APP_EVENT_SCOPES, APP_EVENT_TYPES, APP_FLOW_EVENT_PATTERN, APP_FLOW_ITEMS_MAX, APP_FLOW_NOTIFICATION_PATTERN, APP_HANDLE_PATTERN, APP_HTTP_KEY_PATTERN, APP_ICON_CONTENT_TYPES, APP_ICON_MAX_BYTES, APP_ICON_MIN_PX, APP_LIFECYCLE_EVENT_TYPES, APP_NETWORK_DENIED_SUFFIXES, APP_NETWORK_HOSTS_MAX, APP_PUBLIC_HTTP_MAX, APP_README_MAX_BYTES, APP_RESERVED_HANDLES, APP_SCHEDULES_MAX, APP_SCHEDULE_INTERVALS, APP_SCHEDULE_NAME_PATTERN, APP_SECRETS_MAX, APP_SECRET_NAME_PATTERN, APP_SECRET_PATTERNS, APP_SERVER_BUNDLE_MAX_GZIP_BYTES, APP_SETTINGS_MAX_FIELDS, APP_SETTING_FIELD_TYPES, APP_SETTING_KEY_PATTERN, APP_STORAGE_KEY_PATTERN, APP_STORAGE_MAX_BYTES, APP_STORAGE_MAX_KEYS, APP_TOOL_NAME_PATTERN, APP_UI_MAX_BYTES, APP_UI_MAX_FILES, ApiError, ApprovalPendingError, BASE_CURRENCY, BRAND_BRIEF_MAX_REFERENCES, BUSINESS_INFO_MAX_LENGTH, BUSINESS_NUMBER_PATTERN, CASH_RECEIPT_STATUS_VALUES, CERTIFICATION_STATUSES, COLLECTION_BEST_SELLING_DAYS, COLLECTION_PREVIEW_SIZE, COLLECTION_PRODUCT_SORTS, COLLECTION_SALES_SORT_DEFAULT_DAYS, COLLECTION_SLUG_PATTERN, COLLECTION_TYPES, COUPON_CODE_PATTERN, COUPON_CONDITIONS_DEFAULTS, COUPON_TARGET_ALL, COUPON_TARGET_LIST_MAX, CURRENCIES, CURRENCY_CODES, CUSTOM_INPUT_FORBIDDEN_WORDS, CUSTOM_INPUT_TYPES, DEDICATED_EASY_PAY_PROVIDER, DEFAULT_STORE_LOCALE, FULFILLMENT_METHODS, FULFILLMENT_METHODS_BY_TYPE, FULFILLMENT_METHOD_RULES, FULFILLMENT_RULES, INSTALLABLE_SCOPES, InvalidPriceUnitError, KAKAOPAY_TEST_CID, KNOWN_WEBHOOK_EVENT_TYPES, KRW_MONEY_RULES, MAX_ADDON_GROUPS, MAX_ANALYTICS_ALLOWED_ORIGINS, MAX_AUTO_TRANSITION_DAYS, MAX_CALENDAR_DAYS, MAX_CERTIFICATION_ITEMS, MAX_COLLECTIONS, MAX_COLLECTION_BEST_SELLING_TOP, MAX_COLLECTION_CREATED_WITHIN_DAYS, MAX_COLLECTION_DESCRIPTION, MAX_COLLECTION_PRODUCTS, MAX_COLLECTION_PRODUCTS_PER_ADD, MAX_COLLECTION_RULES, MAX_COLLECTION_RULE_CATEGORIES, MAX_COLLECTION_TITLE, MAX_CUSTOM_INPUTS, MAX_CUSTOM_INPUT_LENGTH, MAX_INFO_SECTION_TITLE, MAX_INVENTORY_OPERATION_LINES, MAX_NOTICE_VALUE_LENGTH, MAX_OPTION_GROUPS, MAX_PICKUP_LOCATIONS, MAX_PRODUCT_IMAGES, MAX_PRODUCT_INFO_SECTIONS, MAX_SAVED_OPTION_SETS, MAX_SAVED_OPTION_SET_NAME, MAX_STAY_NIGHTS, MAX_VALUES_PER_GROUP, MAX_VARIANTS, MCP_TELEMETRY_MAX_RESULTS, MIN_PAYMENT_AMOUNT, NON_INSTALLABLE_SCOPES, NO_COUPON_SETTLEMENT, NO_SHIPPING_BUNDLE_KEY, PAYMENT_ROUTING_EXCLUSION_CODES, PAYPAL_CURRENCIES, PLATFORM_CODE_SETS, POINT_ADJUSTMENT_MAX, POINT_EARN_RATE_BP_MAX, POINT_ENTRY_TYPES, POINT_EXPIRY_DAYS_MAX, POINT_EXPIRY_DAYS_MIN, POINT_LOT_SOURCES, POINT_POLICY_DEFAULTS, POINT_REVIEW_REWARD_MAX, POINT_USE_UNITS, PORTONE_CHANNEL_NAME_MAX_LENGTH, PORTONE_MAX_CHANNELS, PORTONE_MIN_CHANNELS, REFUND_POLICY_DEFAULTS, REFUND_POLICY_DELIVERY_FEE_KEYS, REMOTE_AREA_ZIP_RANGES, RESERVED_STOREFRONT_SLUGS, RESERVED_STORE_CODES, SCOPE_DESCRIPTIONS, SHIPPING_POLICY_DEFAULTS, STARTER_SELLER_TASKS, STARTER_STAGES, STOREFRONT_BLOCKED_PATH_SEGMENTS, STOREFRONT_BUILD_STAGES, STOREFRONT_BUILD_TERMINAL_STATUSES, STOREFRONT_CHECK_TERMINAL_STATUSES, STOREFRONT_CLOSED_SITE_HOLD_DAYS, STOREFRONT_CUSTOM_DOMAIN_LIMIT_DEFAULT, STOREFRONT_DOMAIN_DNS_GRACE_DAYS, STOREFRONT_DOMAIN_DNS_WAIT_DAYS, STOREFRONT_DOMAIN_TXT_LABEL, STOREFRONT_EDIT_ACTIVITY_TIMEOUT_MINUTES, STOREFRONT_EDIT_CAPACITY, STOREFRONT_EDIT_IDLE_MINUTES, STOREFRONT_EDIT_PREVIEW_SUFFIX, STOREFRONT_EDIT_START_STAGES, STOREFRONT_FILE_BATCH_MAX, STOREFRONT_FILE_MAX_BYTES, STOREFRONT_PATH_SEGMENT_PATTERN, STOREFRONT_PLATFORM_DOMAINS, STOREFRONT_PUBLIC_SUFFIXES, STOREFRONT_SEARCH_REGEX_MAX_LENGTH, STOREFRONT_SHOWCASE_SLUG_PREFIX, STOREFRONT_SITE_CREATE_LIMIT, STOREFRONT_SLUG_CHANGE_LIMIT, STOREFRONT_SLUG_CHANGE_WINDOW_DAYS, STOREFRONT_SLUG_HOLD_DAYS, STOREFRONT_SLUG_PATTERN, STOREFRONT_SOURCE_BLOB_BATCH_MAX, STOREFRONT_SOURCE_PART_BYTES, STOREFRONT_WORKSPACE_MAX_BYTES, STOREFRONT_WORKSPACE_MAX_FILES, STORE_CODE_PATTERN, STORE_DRAFT_ATTACHMENT_MAX_BYTES, STORE_DRAFT_MAX_ATTACHMENTS, STORE_DRAFT_RETENTION_DAYS, STORE_ROLE_SCOPES, STORE_SCOPE_RESOURCES, STORE_SESSION_KEYS, STORE_SHOP_TYPES, TEMPLATE_STORE_LOCKED_BUSINESS_FIELDS, TOSS_WIDGET_CLIENT_KEY_PATTERN, TOSS_WIDGET_KEY_MESSAGE, TOSS_WIDGET_SECRET_KEY_PATTERN, UPLOAD_PURPOSE_LIMITS, VARIANT_COUNT_WARNING, VARIANT_STOCK_EXCLUSIVE_MESSAGE, WEBHOOK_DEFAULT_TOLERANCE_SEC, WEBHOOK_DELIVERY_ID_HEADER, WEBHOOK_EVENT_ID_HEADER, WEBHOOK_EVENT_TYPE_HEADER, WEBHOOK_FAILURE_REASONS, WEBHOOK_HEADERS, WEBHOOK_PAYLOAD_EXCERPT_MAX_BYTES, WEBHOOK_RESOURCE_TYPES, WEBHOOK_SIGNATURE_HEADER, WEBHOOK_USER_AGENT, addStorefrontDomainRequestSchema, additionalCurrencyPriceSchema, additionalCurrencyPricesSchema, addonGroupRequestSchema, addonGroupSchema, addonValueRequestSchema, addonValueSchema, addressChangeRequestListSchema, addressTypeSchema, agentPolicyDecisionSchema, aiActivitySchema, aiAgentPhaseSchema, aiAttachmentSchema, aiChoiceOptionSchema, aiConversationFileChangesSchema, aiConversationSchema, aiConversationSummarySchema, aiDesignBoardSchema, aiDesignCanvasSchema, aiDesignConfirmBoardSchema, aiDesignSelectionSchema, aiFileChangeKindSchema, aiFocusAreaSchema, aiFocusSchema, aiMessagePartSchema, aiMessageSchema, aiPreviewSelectionSchema, aiRunChangesSchema, aiRunChangesStatusSchema, aiRunFileDiffSchema, aiRunRevertConflictDetailsSchema, aiRunRevertResultSchema, aiRunSchema, aiRunStatusSchema, aiSetupConfirmItemSchema, aiStreamAccessSchema, aiStreamEventSchema, aiStreamRecordSchema, aiTodoSchema, aiToolChangeSchema, allocateByWeight, analyticsChannelSchema, analyticsCheckoutOutcomeSchema, analyticsCheckoutSchema, analyticsDeviceRowSchema, analyticsDevicesSchema, analyticsFunnelStepSchema, analyticsOriginSchema, analyticsOverviewSchema, analyticsPagesQuerySchema, analyticsPagesSchema, analyticsProductRowSchema, analyticsProductSortSchema, analyticsProductsQuerySchema, analyticsProductsSchema, analyticsRangeQuerySchema, analyticsRealtimeSchema, analyticsSearchQuerySchema, analyticsSearchSchema, analyticsSourceGroupBySchema, analyticsSourceRowSchema, analyticsSourcesQuerySchema, analyticsSourcesSchema, analyticsTotalsSchema, apiLogErrorSchema, apiLogListQuerySchema, apiLogPageSchema, apiLogPrincipalSchema, apiLogPrincipalTypeSchema, apiLogSchema, apiLogStatusFilterSchema, apiLogSummarySchema, appArtifactUploadSchema, appBuildSchema, appBuildStageSchema, appCapabilitiesOf, appDeployKeyCreateSchema, appDeployKeyCreatedSchema, appDeployKeySchema, appDevTokenSchema, appDistributionSchema, appEventTypeSchema, appFlowEventSchema, appFlowEventSummarySchema, appFlowNotificationSchema, appFlowNotificationSummarySchema, appFlowParamSchema, appFlowSummaryOf, appHandleSchema, appHttpKeyMatches, appIconProblem, appInstallRequestSchema, appInstallationActivitySchema, appInstallationAppSchema, appInstallationRunSchema, appInstallationSchema, appInstallationSelfSchema, appInstallationSettingsSchema, appInstallationSettingsUpdateSchema, appInstallationStatusSchema, appInvocationSchema, appListingReviewSchema, appListingReviewStatusSchema, appListingSchema, appManifestProblems, appManifestSchema, appManifestWidens, appNetworkHostProblem, appNetworkHostSchema, appReleaseResultSchema, appRuntimeSchema, appScheduleIntervalLabel, appScheduleListOf, appScheduleSummarySchema, appScopeSchema, appSecretSummarySchema, appSessionSchema, appSettingFieldSchema, appStatusSchema, appStorageEntrySchema, appStorageKeysSchema, appStorageListQuerySchema, appStoragePutSchema, appToolCallSchema, appToolInputSchema, appToolListOf, appToolResultSchema, appToolSchema, appToolSummarySchema, appVersionSchema, appVersionStatusSchema, appVisibilitySchema, approvalDecisionRequestSchema, approvalListQuerySchema, approvalPageSchema, approvalRequestSchema, approvalStatusSchema, approveClaimResultSchema, assertSaleUnit, auditActorSchema, auditActorTypeSchema, auditLogListQuerySchema, auditLogOutcomeSchema, auditLogPageSchema, auditLogSchema, auditLogSourceSchema, bestSellingRuleOf, brandBriefProductSourceSchema, brandBriefReferenceSchema, brandBriefSchema, brandBriefViewSchema, buildAuthorizeUrl, buildQuery, bulkResultSchema, businessInfoPatchShape, businessInfoResponseShape, businessNumberSchema, calendarDateSchema, calendarDaySchema, calendarQuerySchema, cancelBySellerRequestSchema, cancelBySellerResultSchema, carrierSchema, cashReceiptSchema, categoryAttributeSchema, categoryCreateRequestSchema, categoryDeleteQuerySchema, categoryDeleteStrategySchema, categoryListQuerySchema, categoryLocalizationRequestSchema, categoryLocalizationSchema, categoryPatchRequestSchema, categoryProductSortSchema, categorySchema, categorySearchResultSchema, categoryTreeNodeSchema, categoryWithPathSchema, changeStorefrontSlugRequestSchema, changeStorefrontTemplateRequestSchema, changeTypeSchema, claimCollectCompleteRequestSchema, claimDetailSchema, claimHoldResultSchema, claimListQuerySchema, claimReasonSchema, claimRedeliveryRequestSchema, claimReturnAddressSchema, claimSchema, claimStatusSchema, claimTypeSchema, claimWebhookEventDataSchema, claimWebhookEventSchema, collectionCreateRequestSchema, collectionListQuerySchema, collectionPageSchema, collectionPatchRequestSchema, collectionPreviewRequestSchema, collectionPreviewSchema, collectionProductListQuerySchema, collectionProductSchema, collectionProductSortRequestSchema, collectionProductsAddRequestSchema, collectionProductsReplaceRequestSchema, collectionRuleCategoryIds, collectionRuleSchema, collectionRuleViewSchema, collectionRulesPredicate, collectionRulesSchema, collectionSchema, collectionStateCountsSchema, collectionStateOf, collectionStateSchema, commerceFlowCheckSchema, commerceFlowSchema, commerceFlowSummarySchema, commerceFlowVersionViewSchema, commerceNumberField, compareBySales, consentActionSchema, consentKindSchema, consentSourceSchema, couponBenefitSchema, couponConditionsInputSchema, couponConditionsSchema, couponDiscountOf, couponIssueListQuerySchema, couponIssueMethodSchema, couponIssueSchema, couponIssueStatusSchema, couponKindSchema, couponListQuerySchema, couponRedemptionListQuerySchema, couponRedemptionSchema, couponRejectReasonSchema, couponRuleSchema, couponSchema, couponStatsSchema, couponStatusSchema, couponTargetInputSchema, couponTargetSchema, createAiConversationRequestSchema, createAiConversationResponseSchema, createCommerceFlowRequestSchema, createCouponRequestSchema, createMarketRequestSchema, createPkcePair, createStoreClient, createStoreDraftRequestSchema, createStoreDraftResponseSchema, createStoreSession, createStorefrontEditPreviewLinkRequestSchema, createStorefrontPreviewLinkRequestSchema, createStorefrontSiteRequestSchema, createStorefrontVersionRequestSchema, currencyCodeSchema, currencyRefundFeesSchema, currencyShippingPolicySchema, currencySpecOf, customInputLabelForbiddenWord, customInputRequestSchema, customInputSchema, customInputValueSchema, customerAddressSchema, customerConsentListQuerySchema, customerConsentSchema, customerConsentStateSchema, customerConsentsSchema, customerCouponSchema, customerDelegationRequestSchema, customerDelegationSchema, customerDetailSchema, customerInquiryCategorySchema, customerInquiryListQuerySchema, customerListQuerySchema, customerOrderSchema, customerPointsSchema, customerSortSchema, customerStatsSchema, customerSummarySchema, customerWithdrawalBlockedDetailsSchema, defaultFulfillmentMethodOf, deleteStorefrontFileRequestSchema, deliveryBundleKeyOf, deliveryFeeWaiverSchema, deliveryInfoSchema, deliveryMethodSchema, deliveryStatusSchema, deliveryTypeSchema, descendantCategoryIdsOf, describeScope, devStoreSchema, developerAppCreateSchema, developerAppSchema, developerInstallationSchema, developerOrgSchema, developerStoreSchema, disableStorefrontHostingRequestSchema, discountRequestSchema, discountSchema, dispatchRequestSchema, easyPayProviderResponseSchema, easyPayProviderSchema, eventTypeSchema, exchangeAuthorizationCode, floorToSaleUnit, flowActionRequestSchema, flowActionResultSchema, flowActionSchema, flowFieldValueSchema, flowInputFieldSchema, flowNodeTypesSchema, flowNotificationWebhookEventDataSchema, flowNotificationWebhookEventSchema, flowPresetDetailSchema, flowPresetSummarySchema, flowRunSchema, flowRunStepSchema, flowSecretNameSchema, flowSecretSchema, flowStateChangedWebhookEventDataSchema, flowStateChangedWebhookEventSchema, flowStateSchema, formatOrderNo, fromDecimalString, fulfillBulkRequestSchema, fulfillRequestSchema, fulfillmentMethodOf, fulfillmentMethodSchema, fulfillmentMethodsOf, fulfillmentRuleOf, fulfillmentTypeOf, fulfillmentTypeResponseSchema, fulfillmentTypeSchema, holdOrderItemRequestSchema, infoFieldSourceSchema, infoSchemaFieldSchema, infoSchemaSchema, infoSectionRequestSchema, infoSectionSchema, inquiryListQuerySchema, inquirySchema, inquiryWebhookEventDataSchema, inquiryWebhookEventSchema, inventoryAdjustmentLineSchema, inventoryAdjustmentReasonSchema, inventoryAdjustmentRequestSchema, inventoryChangedWebhookEventDataSchema, inventoryChangedWebhookEventSchema, inventoryLevelListQuerySchema, inventoryLevelPageSchema, inventoryLevelSchema, inventoryLocationRequestSchema, inventoryLocationSchema, inventoryModeSchema, inventoryMovementKindSchema, inventoryMovementListQuerySchema, inventoryMovementPageSchema, inventoryMovementSchema, inventoryOperationResultSchema, inventoryTransferRequestSchema, invitationDeliveryStatusSchema, invitationListQuerySchema, invitationSchema, inviteMemberRequestSchema, isAiAgentNotesPath, isAiDesignPath, isCouponTargetLine, isCurrencyCode, isEditableStorefrontPath, isInstallableScope, isReservedStoreCode, isReservedStorefrontSlug, isSaleUnitPrice, isShowcaseStorefrontSlug, isStoreScope, isWebOrigin, issueCouponRequestSchema, issueCouponResultSchema, kakaoPayCredentialsInputSchema, liveGateConditionCodeSchema, liveGateConditionSchema, liveGateErrorDetailsSchema, liveGateSchema, localeCodeSchema, loginProviderSchema, loginProviderStatusSchema, loginProviderTestSchema, loginSettingsSchema, marketSchema, maskedSecretSchema, matchesCollectionRules, mcpRuleResultSchema, mcpToolEventSchema, migrateFlowVersionRequestSchema, migrateFlowVersionResultSchema, minPaymentOf, minorToMajor, moneyRulesOf, moveFlowStateRequestSchema, moveStorefrontFileRequestSchema, myAccountSchema, myStoreSchema, naverPayCredentialsInputSchema, nightsOf, normalizeBusinessNumber, normalizeCouponCode, normalizeLocale, normalizeStorefrontHostname, normalizeStorefrontPath, oauthTokenResponseSchema, openFulfillmentUnion, optionGroupKindSchema, optionGroupRequestSchema, optionGroupSchema, optionModelRequestSchema, optionModelSchema, optionSelectionSchema, optionSortSchema, optionValueRequestSchema, optionValueSchema, orderCanceledWebhookEventDataSchema, orderCanceledWebhookEventSchema, orderDiscountSchema, orderFlowActionResultSchema, orderFulfilledWebhookEventDataSchema, orderFulfilledWebhookEventSchema, orderItemFlowSchema, orderItemFulfillmentSchema, orderItemFulfillmentSnapshotResponseSchema, orderItemFulfillmentSnapshotSchema, orderItemListQuerySchema, orderItemMemoResultSchema, orderItemPageSchema, orderItemSchema, orderItemStatusSchema, orderListQuerySchema, orderSchema, orderSummaryPageSchema, orderSummarySchema, orderWebhookEventDataSchema, orderWebhookEventSchema, pageInfoSchema, pageQueryShape, pageSchema, parseOrderNo, parseWebhookEvent, payPalCredentialsInputSchema, paymentAttemptRecordSchema, paymentAttemptStatusSchema, paymentCredentialSetSchema, paymentFailureWarningSchema, paymentListQuerySchema, paymentProviderSchema, paymentProviderVerificationSchema, paymentRecordDetailSchema, paymentRecordPageSchema, paymentRecordSchema, paymentRecordStatusSchema, paymentRefundRecordSchema, paymentSettingsSchema, paymentStatusProviderSchema, paymentStatusSchema, pgEnvironmentSchema, pgPaymentMethodSchema, pgProviderResponseSchema, pgProviderSchema, pgVerificationResultSchema, pickupLocationRequestSchema, pickupLocationSchema, pickupLocationSnapshotSchema, planCodeSchema, planEntitlementsSchema, planErrorDetailsSchema, platformCodeSchema, pointAdjustmentRequestSchema, pointAdjustmentResultSchema, pointEarnOf, pointEarnRateBpSchema, pointEarningEnabled, pointEntrySchema, pointExpiresAtOf, pointHistoryQuerySchema, pointLotSchema, pointPolicyNoticeSchema, pointPolicySchema, pointRestoreExpiresAtOf, pointUseOf, pointUsePolicySchema, policyDocumentUrlSchema, policyVersionSchema, portOneChannelSchema, portOneCredentialsInputSchema, productCertificationsRequestSchema, productCertificationsSchema, productCreateRequestSchema, productCurrencyPriceSchema, productCurrencyPricesSchema, productFulfillmentCreateSchema, productFulfillmentResponseSchema, productFulfillmentSchema, productFulfillmentUpdateSchema, productImageRejection, productImageUrlSchema, productListQuerySchema, productLocalizationRequestSchema, productLocalizationSchema, productNoticeRequestSchema, productNoticeSchema, productOutOfStockWebhookEventDataSchema, productOutOfStockWebhookEventSchema, productPatchRequestSchema, productRefundPolicyOverride, productRefundPolicyPatchSchema, productReplaceRequestSchema, productSchema, productSortSchema, productStatusSchema, productSummarySchema, productVariantRequestSchema, productVariantSchema, proratedPaidRefundBase, proratedPointRefund, proratedRefundBase, publicPlanSchema, publicPlansSchema, publishStorefrontVersionRequestSchema, purchaseDecisionExtendResultSchema, purchaseDecisionRequestResultSchema, purchaseEarnPolicySchema, purchaseEarnRateOf, putBrandBriefRequestSchema, quoteDelivery, quotePricing, rankBestSelling, refreshUserToken, refundPolicyPatchSchema, refundPolicySchema, rejectClaimRequestSchema, remoteAreaLabelOf, remoteAreaOf, remoteAreaSchema, remoteSurchargeOf, replaceStorefrontSourceRequestSchema, replayFlowRequestSchema, replayFlowResultSchema, requiresCollection, requiresShipping, resolvePointPolicy, resolveRefundPolicy, resolveShippingPolicy, resolvedFlowSchema, responsePlanCodeSchema, responsePointEntryTypeSchema, reviewListQuerySchema, reviewReportResultSchema, reviewRewardPointOf, reviewRewardPolicySchema, reviewSchema, reviewSortSchema, reviewWebhookEventDataSchema, reviewWebhookEventSchema, rollbackStorefrontRequestSchema, runStorefrontCheckRequestSchema, salesReportCurrencySchema, salesReportGroupBySchema, salesReportQuerySchema, salesReportRowSchema, salesReportSchema, salesTotalsSchema, saveFlowDraftRequestSchema, saveFlowSecretRequestSchema, saveLoginProviderRequestSchema, savedCustomInputRequestSchema, savedCustomInputSchema, savedOptionGroupRequestSchema, savedOptionGroupSchema, savedOptionSetCompositionSchema, savedOptionSetFromProductRequestSchema, savedOptionSetFromProductResultSchema, savedOptionSetListQuerySchema, savedOptionSetRequestSchema, savedOptionSetSchema, savedOptionSetSortSchema, savedOptionValueRequestSchema, savedOptionValueSchema, scopeAccessSchema, scopesCoverEvent, searchStorefrontFilesRequestSchema, sellerAddressListQuerySchema, sellerAddressRequestSchema, sellerAddressSchema, sellerCancelPreviewSchema, sellerCustomerInquirySchema, sendAiMessageRequestSchema, sendAiMessageResponseSchema, setCalendarRequestSchema, setPlatformTestKeysRequestSchema, setStorefrontVisibilityRequestSchema, settleCouponShortfall, settlementDetailQuerySchema, settlementDetailSchema, settlementListQuerySchema, settlementStatusSchema, settlementSummarySchema, settlementWithDetailsSchema, shippingAddressSchema, shippingCurrencyPriceSchema, shippingCurrencyPricesSchema, shippingPolicyPatchSchema, shippingPolicySchema, simulateFlowRequestSchema, simulateFlowResultSchema, simulationStepSchema, splitRefund, starterSellerTaskSchema, starterStageSchema, starterStatusSchema, starterStoreInfoFieldSchema, stayRangeSchema, staySnapshotSchema, storeAppDetailSchema, storeAppSchema, storeCodeSchema, storeDraftPreviewSchema, storeDraftSchema, storeIndustrySchema, storeMemberRoleUpdatedSchema, storeMemberSchema, storePointPolicySchema, storeRoleSchema, storeSchema, storeScopeResourceSchema, storeSetupBriefSchema, storeShopTypeSchema, storeSubscriptionSchema, storeTemplateSchema, storedAdditionalCurrencyPriceSchema, storedProductCurrencyPriceSchema, storedShippingCurrencyPriceSchema, storefrontBuildDependenciesSchema, storefrontBuildListQuerySchema, storefrontBuildSchema, storefrontBuildStatusSchema, storefrontCheckSchema, storefrontCheckStatusSchema, storefrontCustomDomainStatusSchema, storefrontCustomHostnameProblem, storefrontDependencyFindingSchema, storefrontDeploymentLogSchema, storefrontDeploymentSchema, storefrontDeploymentStepSchema, storefrontDevLogsSchema, storefrontDnsRecordSchema, storefrontDomainSchema, storefrontDomainTxtNameOf, storefrontEditPreviewLabelOf, storefrontEditPreviewSchema, storefrontEditSessionSchema, storefrontEditSessionStatusSchema, storefrontEditingSchema, storefrontFileConflictDetailsSchema, storefrontFileContentQuerySchema, storefrontFileContentSchema, storefrontFileDeleteResultSchema, storefrontFileEncodingSchema, storefrontFileEntrySchema, storefrontFileHashSchema, storefrontFileListQuerySchema, storefrontFileListSchema, storefrontFileMoveResultSchema, storefrontFilePathSchema, storefrontFileSearchResultSchema, storefrontFileWriteResultSchema, storefrontHostingSchema, storefrontPreviewLinkSchema, storefrontProvisioningSchema, storefrontRuleResultSchema, storefrontRuleSeveritySchema, storefrontSiteDomainSchema, storefrontSiteDomainsSchema, storefrontSiteSchema, storefrontSiteSnapshotSchema, storefrontSiteStatusSchema, storefrontSlugAvailabilityQuerySchema, storefrontSlugAvailabilitySchema, storefrontSlugSchema, storefrontSourceArchivePartSchema, storefrontSourceArchiveQuerySchema, storefrontSourceBlobsResultSchema, storefrontSourceModeSchema, storefrontSourceRefSchema, storefrontSourceReplacedSchema, storefrontSourceSchema, storefrontSuspensionSchema, storefrontTemplateSchema, storefrontVerifyReportSchema, storefrontVersionCreatedSchema, storefrontVersionPreviewLabelOf, storefrontVersionSchema, storefrontVersionStatusSchema, storefrontVisibilitySchema, subscriptionLimitsSchema, subscriptionStatusSchema, subscriptionUsageSchema, toDecimalString, toMinor, tossPaymentsCredentialsInputSchema, trackingStageResponseSchema, trackingUpdateResultSchema, unknownWebhookEventSchema, updateCouponRequestSchema, updateLoginProviderRequestSchema, updateLoginSettingsRequestSchema, updateMarketRequestSchema, updateMemberRoleRequestSchema, updatePaymentProviderRequestSchema, updatePaymentSettingsRequestSchema, updatePointPolicyRequestSchema, updateStoreRequestSchema, updateStoreTemplateRequestSchema, uploadExtensionOf, uploadPurposeSchema, uploadRejection, uploadRequestSchema, uploadStorefrontSourceBlobsRequestSchema, uploadTicketSchema, upsertKakaoPayProviderRequestSchema, upsertNaverPayProviderRequestSchema, upsertPayPalProviderRequestSchema, upsertPortOneProviderRequestSchema, upsertTossPaymentsProviderRequestSchema, variantStockRequestSchema, variantStockSchema, verifyPaymentProviderRequestSchema, webhookCreatedSchema, webhookDeliveryDetailSchema, webhookDeliveryErrorCodeSchema, webhookDeliveryListQuerySchema, webhookDeliveryResourceSchema, webhookDeliverySchema, webhookDeliveryStatusSchema, webhookEventSchema, webhookFailureReasonSchema, webhookRedeliverFailedResultSchema, webhookRequestHeaderSchema, webhookRequestSchema, webhookResourceTypeSchema, webhookSchema, webhookSecretRotatedSchema, webhookStatusSchema, webhookTestRequestSchema, webhookTestResultSchema, withdrawCustomerRequestSchema, writeDryRunResultSchema, writePreviewSchema, writeStorefrontFilesRequestSchema };
11457
+ export { AI_AGENT_NOTES_DIR, AI_AGENT_PHASES, AI_DESIGN_BOARDS_MAX, AI_DESIGN_BOARD_FILE_PATTERN, AI_DESIGN_BOARD_KINDS, AI_DESIGN_CANVAS_PATH, AI_DESIGN_CONFIRM_APPROVE, AI_DESIGN_DIR, AI_DESIGN_VIEWPORTS, AI_MESSAGE_MAX_ATTACHMENTS, AI_MESSAGE_MAX_CHARS, AI_RUN_ACTIVE_STATUSES, AI_RUN_FILE_CHANGES_RETENTION_DAYS, AI_SETUP_CONFIRM_APPROVE, AI_TODOS_MAX, AI_TODO_STATUSES, APPROVAL_ALREADY_DECIDED_CODE, APPROVAL_REQUIRED_CODE, APP_CAPABILITIES, APP_DEPLOY_KEY_PATTERN, APP_DEPLOY_KEY_PREFIX, APP_EVENTS_MAX, APP_EVENT_SCOPES, APP_EVENT_TYPES, APP_FLOW_EVENT_PATTERN, APP_FLOW_ITEMS_MAX, APP_FLOW_NOTIFICATION_PATTERN, APP_HANDLE_PATTERN, APP_HTTP_KEY_PATTERN, APP_ICON_CONTENT_TYPES, APP_ICON_MAX_BYTES, APP_ICON_MIN_PX, APP_LIFECYCLE_EVENT_TYPES, APP_NETWORK_DENIED_SUFFIXES, APP_NETWORK_HOSTS_MAX, APP_PUBLIC_HTTP_MAX, APP_README_MAX_BYTES, APP_RESERVED_HANDLES, APP_SCHEDULES_MAX, APP_SCHEDULE_INTERVALS, APP_SCHEDULE_NAME_PATTERN, APP_SECRETS_MAX, APP_SECRET_NAME_PATTERN, APP_SECRET_PATTERNS, APP_SERVER_BUNDLE_MAX_GZIP_BYTES, APP_SETTINGS_MAX_FIELDS, APP_SETTING_FIELD_TYPES, APP_SETTING_KEY_PATTERN, APP_STORAGE_KEY_PATTERN, APP_STORAGE_MAX_BYTES, APP_STORAGE_MAX_KEYS, APP_TOOL_NAME_PATTERN, APP_UI_MAX_BYTES, APP_UI_MAX_FILES, ApiError, ApprovalPendingError, BASE_CURRENCY, BRAND_BRIEF_MAX_REFERENCES, BUSINESS_INFO_MAX_LENGTH, BUSINESS_NUMBER_PATTERN, CASH_RECEIPT_STATUS_VALUES, CERTIFICATION_STATUSES, COLLECTION_BEST_SELLING_DAYS, COLLECTION_PREVIEW_SIZE, COLLECTION_PRODUCT_SORTS, COLLECTION_SALES_SORT_DEFAULT_DAYS, COLLECTION_SLUG_PATTERN, COLLECTION_TYPES, COUPON_CODE_PATTERN, COUPON_CONDITIONS_DEFAULTS, COUPON_TARGET_ALL, COUPON_TARGET_LIST_MAX, CURRENCIES, CURRENCY_CODES, CUSTOM_INPUT_FORBIDDEN_WORDS, CUSTOM_INPUT_TYPES, DEDICATED_EASY_PAY_PROVIDER, DEFAULT_STORE_LOCALE, FULFILLMENT_METHODS, FULFILLMENT_METHODS_BY_TYPE, FULFILLMENT_METHOD_RULES, FULFILLMENT_RULES, INSTALLABLE_SCOPES, InvalidPriceUnitError, KAKAOPAY_TEST_CID, KNOWN_WEBHOOK_EVENT_TYPES, KRW_MONEY_RULES, MAX_ADDON_GROUPS, MAX_ANALYTICS_ALLOWED_ORIGINS, MAX_AUTO_TRANSITION_DAYS, MAX_CALENDAR_DAYS, MAX_CERTIFICATION_ITEMS, MAX_COLLECTIONS, MAX_COLLECTION_BEST_SELLING_TOP, MAX_COLLECTION_CREATED_WITHIN_DAYS, MAX_COLLECTION_DESCRIPTION, MAX_COLLECTION_PRODUCTS, MAX_COLLECTION_PRODUCTS_PER_ADD, MAX_COLLECTION_RULES, MAX_COLLECTION_RULE_CATEGORIES, MAX_COLLECTION_TITLE, MAX_CUSTOM_INPUTS, MAX_CUSTOM_INPUT_LENGTH, MAX_INFO_SECTION_TITLE, MAX_INVENTORY_OPERATION_LINES, MAX_NOTICE_VALUE_LENGTH, MAX_OPTION_GROUPS, MAX_PICKUP_LOCATIONS, MAX_PRODUCT_IMAGES, MAX_PRODUCT_INFO_SECTIONS, MAX_SAVED_OPTION_SETS, MAX_SAVED_OPTION_SET_NAME, MAX_STAY_NIGHTS, MAX_VALUES_PER_GROUP, MAX_VARIANTS, MCP_TELEMETRY_MAX_RESULTS, MIN_PAYMENT_AMOUNT, NON_INSTALLABLE_SCOPES, NO_COUPON_SETTLEMENT, NO_SHIPPING_BUNDLE_KEY, PAYMENT_ROUTING_EXCLUSION_CODES, PAYPAL_CURRENCIES, PLATFORM_CODE_SETS, POINT_ADJUSTMENT_MAX, POINT_EARN_RATE_BP_MAX, POINT_ENTRY_TYPES, POINT_EXPIRY_DAYS_MAX, POINT_EXPIRY_DAYS_MIN, POINT_LOT_SOURCES, POINT_POLICY_DEFAULTS, POINT_REVIEW_REWARD_MAX, POINT_USE_UNITS, PORTONE_CHANNEL_NAME_MAX_LENGTH, PORTONE_MAX_CHANNELS, PORTONE_MIN_CHANNELS, REFUND_POLICY_DEFAULTS, REFUND_POLICY_DELIVERY_FEE_KEYS, REMOTE_AREA_ZIP_RANGES, RESERVED_STOREFRONT_SLUGS, RESERVED_STORE_CODES, SCOPE_DESCRIPTIONS, SHIPPING_POLICY_DEFAULTS, STARTER_SELLER_TASKS, STARTER_STAGES, STOREFRONT_BLOCKED_PATH_SEGMENTS, STOREFRONT_BUILD_STAGES, STOREFRONT_BUILD_TERMINAL_STATUSES, STOREFRONT_CHECK_TERMINAL_STATUSES, STOREFRONT_CLOSED_SITE_HOLD_DAYS, STOREFRONT_CUSTOM_DOMAIN_LIMIT_DEFAULT, STOREFRONT_DOMAIN_DNS_GRACE_DAYS, STOREFRONT_DOMAIN_DNS_WAIT_DAYS, STOREFRONT_DOMAIN_TXT_LABEL, STOREFRONT_EDIT_ACTIVITY_TIMEOUT_MINUTES, STOREFRONT_EDIT_CAPACITY, STOREFRONT_EDIT_IDLE_MINUTES, STOREFRONT_EDIT_PREVIEW_SUFFIX, STOREFRONT_EDIT_START_STAGES, STOREFRONT_FILE_BATCH_MAX, STOREFRONT_FILE_MAX_BYTES, STOREFRONT_PATH_SEGMENT_PATTERN, STOREFRONT_PLATFORM_DOMAINS, STOREFRONT_PUBLIC_SUFFIXES, STOREFRONT_SEARCH_REGEX_MAX_LENGTH, STOREFRONT_SHOWCASE_SLUG_PREFIX, STOREFRONT_SITE_CREATE_LIMIT, STOREFRONT_SLUG_CHANGE_LIMIT, STOREFRONT_SLUG_CHANGE_WINDOW_DAYS, STOREFRONT_SLUG_HOLD_DAYS, STOREFRONT_SLUG_PATTERN, STOREFRONT_SOURCE_BLOB_BATCH_MAX, STOREFRONT_SOURCE_PART_BYTES, STOREFRONT_WORKSPACE_MAX_BYTES, STOREFRONT_WORKSPACE_MAX_FILES, STORE_CODE_PATTERN, STORE_DRAFT_ATTACHMENT_MAX_BYTES, STORE_DRAFT_MAX_ATTACHMENTS, STORE_DRAFT_RETENTION_DAYS, STORE_ROLE_SCOPES, STORE_SCOPE_RESOURCES, STORE_SESSION_KEYS, STORE_SHOP_TYPES, TEMPLATE_STORE_LOCKED_BUSINESS_FIELDS, TOSS_WIDGET_CLIENT_KEY_PATTERN, TOSS_WIDGET_KEY_MESSAGE, TOSS_WIDGET_SECRET_KEY_PATTERN, UPLOAD_PURPOSE_LIMITS, VARIANT_COUNT_WARNING, VARIANT_STOCK_EXCLUSIVE_MESSAGE, WEBHOOK_DEFAULT_TOLERANCE_SEC, WEBHOOK_DELIVERY_ID_HEADER, WEBHOOK_EVENT_ID_HEADER, WEBHOOK_EVENT_TYPE_HEADER, WEBHOOK_FAILURE_REASONS, WEBHOOK_HEADERS, WEBHOOK_PAYLOAD_EXCERPT_MAX_BYTES, WEBHOOK_RESOURCE_TYPES, WEBHOOK_SIGNATURE_HEADER, WEBHOOK_USER_AGENT, addStorefrontDomainRequestSchema, additionalCurrencyPriceSchema, additionalCurrencyPricesSchema, addonGroupRequestSchema, addonGroupSchema, addonValueRequestSchema, addonValueSchema, addressChangeRequestListSchema, addressTypeSchema, agentPolicyDecisionSchema, aiActivitySchema, aiAgentPhaseSchema, aiAttachmentSchema, aiChoiceOptionSchema, aiConversationFileChangesSchema, aiConversationSchema, aiConversationSummarySchema, aiDesignBoardSchema, aiDesignCanvasSchema, aiDesignConfirmBoardSchema, aiDesignSelectionSchema, aiFileChangeKindSchema, aiFocusAreaSchema, aiFocusSchema, aiMessagePartSchema, aiMessageSchema, aiPreviewSelectionSchema, aiRunChangesSchema, aiRunChangesStatusSchema, aiRunFileDiffSchema, aiRunRevertConflictDetailsSchema, aiRunRevertResultSchema, aiRunSchema, aiRunStatusSchema, aiSetupConfirmItemSchema, aiStreamAccessSchema, aiStreamEventSchema, aiStreamRecordSchema, aiTodoSchema, aiToolChangeSchema, allocateByWeight, analyticsChannelSchema, analyticsCheckoutOutcomeSchema, analyticsCheckoutSchema, analyticsDeviceRowSchema, analyticsDevicesSchema, analyticsFunnelStepSchema, analyticsOriginSchema, analyticsOverviewSchema, analyticsPagesQuerySchema, analyticsPagesSchema, analyticsProductRowSchema, analyticsProductSortSchema, analyticsProductsQuerySchema, analyticsProductsSchema, analyticsRangeQuerySchema, analyticsRealtimeSchema, analyticsSearchQuerySchema, analyticsSearchSchema, analyticsSourceGroupBySchema, analyticsSourceRowSchema, analyticsSourcesQuerySchema, analyticsSourcesSchema, analyticsTotalsSchema, apiLogErrorSchema, apiLogListQuerySchema, apiLogPageSchema, apiLogPrincipalSchema, apiLogPrincipalTypeSchema, apiLogSchema, apiLogStatusFilterSchema, apiLogSummarySchema, appArtifactUploadSchema, appBuildSchema, appBuildStageSchema, appCapabilitiesOf, appDeployKeyCreateSchema, appDeployKeyCreatedSchema, appDeployKeySchema, appDevTokenSchema, appDistributionSchema, appEventTypeSchema, appFlowEventSchema, appFlowEventSummarySchema, appFlowNotificationSchema, appFlowNotificationSummarySchema, appFlowParamSchema, appFlowSummaryOf, appHandleSchema, appHttpKeyMatches, appIconProblem, appInstallRequestSchema, appInstallationActivitySchema, appInstallationAppSchema, appInstallationRunSchema, appInstallationSchema, appInstallationSelfSchema, appInstallationSettingsSchema, appInstallationSettingsUpdateSchema, appInstallationStatusSchema, appInvocationSchema, appListingReviewSchema, appListingReviewStatusSchema, appListingSchema, appManifestProblems, appManifestSchema, appManifestWidens, appNetworkHostProblem, appNetworkHostSchema, appReleaseResultSchema, appRuntimeSchema, appScheduleIntervalLabel, appScheduleListOf, appScheduleSummarySchema, appScopeSchema, appSecretSummarySchema, appSessionSchema, appSettingFieldSchema, appStatusSchema, appStorageEntrySchema, appStorageKeysSchema, appStorageListQuerySchema, appStoragePutSchema, appToolCallSchema, appToolInputSchema, appToolListOf, appToolResultSchema, appToolSchema, appToolSummarySchema, appVersionSchema, appVersionStatusSchema, appVisibilitySchema, approvalDecisionRequestSchema, approvalListQuerySchema, approvalPageSchema, approvalRequestSchema, approvalStatusSchema, approveClaimResultSchema, assertSaleUnit, auditActorSchema, auditActorTypeSchema, auditLogListQuerySchema, auditLogOutcomeSchema, auditLogPageSchema, auditLogSchema, auditLogSourceSchema, bestSellingRuleOf, brandBriefProductSourceSchema, brandBriefReferenceSchema, brandBriefSchema, brandBriefViewSchema, buildAuthorizeUrl, buildQuery, bulkResultSchema, businessInfoPatchShape, businessInfoResponseShape, businessNumberSchema, calendarDateSchema, calendarDaySchema, calendarQuerySchema, cancelBySellerRequestSchema, cancelBySellerResultSchema, carrierSchema, cashReceiptSchema, categoryAttributeSchema, categoryCreateRequestSchema, categoryDeleteQuerySchema, categoryDeleteStrategySchema, categoryListQuerySchema, categoryLocalizationRequestSchema, categoryLocalizationSchema, categoryPatchRequestSchema, categoryProductSortSchema, categorySchema, categorySearchResultSchema, categoryTreeNodeSchema, categoryWithPathSchema, changeStorefrontSlugRequestSchema, changeStorefrontTemplateRequestSchema, changeTypeSchema, claimCollectCompleteRequestSchema, claimDetailSchema, claimHoldResultSchema, claimListQuerySchema, claimReasonSchema, claimRedeliveryRequestSchema, claimReturnAddressSchema, claimSchema, claimStatusSchema, claimTypeSchema, claimWebhookEventDataSchema, claimWebhookEventSchema, collectionCreateRequestSchema, collectionListQuerySchema, collectionLocalizationRequestSchema, collectionLocalizationSchema, collectionPageSchema, collectionPatchRequestSchema, collectionPreviewRequestSchema, collectionPreviewSchema, collectionProductListQuerySchema, collectionProductSchema, collectionProductSortRequestSchema, collectionProductsAddRequestSchema, collectionProductsReplaceRequestSchema, collectionRuleCategoryIds, collectionRuleSchema, collectionRuleViewSchema, collectionRulesPredicate, collectionRulesSchema, collectionSchema, collectionStateCountsSchema, collectionStateOf, collectionStateSchema, commerceFlowCheckSchema, commerceFlowSchema, commerceFlowSummarySchema, commerceFlowVersionViewSchema, commerceNumberField, compareBySales, connectStorefrontGitRequestSchema, consentActionSchema, consentKindSchema, consentSourceSchema, couponBenefitSchema, couponConditionsInputSchema, couponConditionsSchema, couponDiscountOf, couponIssueListQuerySchema, couponIssueMethodSchema, couponIssueSchema, couponIssueStatusSchema, couponKindSchema, couponListQuerySchema, couponRedemptionListQuerySchema, couponRedemptionSchema, couponRejectReasonSchema, couponRuleSchema, couponSchema, couponStatsSchema, couponStatusSchema, couponTargetInputSchema, couponTargetSchema, createAiConversationRequestSchema, createAiConversationResponseSchema, createCommerceFlowRequestSchema, createCouponRequestSchema, createMarketRequestSchema, createPkcePair, createStoreClient, createStoreDraftRequestSchema, createStoreDraftResponseSchema, createStoreSession, createStorefrontEditPreviewLinkRequestSchema, createStorefrontPreviewLinkRequestSchema, createStorefrontSiteRequestSchema, createStorefrontVersionRequestSchema, currencyCodeSchema, currencyRefundFeesSchema, currencyShippingPolicySchema, currencySpecOf, customInputLabelForbiddenWord, customInputRequestSchema, customInputSchema, customInputValueSchema, customerAddressSchema, customerConsentListQuerySchema, customerConsentSchema, customerConsentStateSchema, customerConsentsSchema, customerCouponSchema, customerDelegationRequestSchema, customerDelegationSchema, customerDetailSchema, customerInquiryCategorySchema, customerInquiryListQuerySchema, customerListQuerySchema, customerOrderSchema, customerPointsSchema, customerSortSchema, customerStatsSchema, customerSummarySchema, customerWithdrawalBlockedDetailsSchema, defaultFulfillmentMethodOf, deleteStorefrontFileRequestSchema, deliveryBundleKeyOf, deliveryFeeWaiverSchema, deliveryInfoSchema, deliveryMethodSchema, deliveryStatusSchema, deliveryTypeSchema, descendantCategoryIdsOf, describeScope, devStoreSchema, developerAppCreateSchema, developerAppSchema, developerInstallationSchema, developerOrgSchema, developerStoreSchema, disableStorefrontHostingRequestSchema, discountRequestSchema, discountSchema, dispatchRequestSchema, easyPayProviderResponseSchema, easyPayProviderSchema, eventTypeSchema, exchangeAuthorizationCode, floorToSaleUnit, flowActionRequestSchema, flowActionResultSchema, flowActionSchema, flowFieldValueSchema, flowInputFieldSchema, flowNodeTypesSchema, flowNotificationWebhookEventDataSchema, flowNotificationWebhookEventSchema, flowPresetDetailSchema, flowPresetSummarySchema, flowRunSchema, flowRunStepSchema, flowSecretNameSchema, flowSecretSchema, flowStateChangedWebhookEventDataSchema, flowStateChangedWebhookEventSchema, flowStateSchema, formatOrderNo, fromDecimalString, fulfillBulkRequestSchema, fulfillRequestSchema, fulfillmentMethodOf, fulfillmentMethodSchema, fulfillmentMethodsOf, fulfillmentRuleOf, fulfillmentTypeOf, fulfillmentTypeResponseSchema, fulfillmentTypeSchema, holdOrderItemRequestSchema, infoFieldSourceSchema, infoSchemaFieldSchema, infoSchemaSchema, infoSectionLocalizationRequestSchema, infoSectionLocalizationSchema, infoSectionRequestSchema, infoSectionSchema, inquiryListQuerySchema, inquirySchema, inquiryWebhookEventDataSchema, inquiryWebhookEventSchema, inventoryAdjustmentLineSchema, inventoryAdjustmentReasonSchema, inventoryAdjustmentRequestSchema, inventoryChangedWebhookEventDataSchema, inventoryChangedWebhookEventSchema, inventoryLevelListQuerySchema, inventoryLevelPageSchema, inventoryLevelSchema, inventoryLocationRequestSchema, inventoryLocationSchema, inventoryModeSchema, inventoryMovementKindSchema, inventoryMovementListQuerySchema, inventoryMovementPageSchema, inventoryMovementSchema, inventoryOperationResultSchema, inventoryTransferRequestSchema, invitationDeliveryStatusSchema, invitationListQuerySchema, invitationSchema, inviteMemberRequestSchema, isAiAgentNotesPath, isAiDesignPath, isCouponTargetLine, isCurrencyCode, isEditableStorefrontPath, isInstallableScope, isReservedStoreCode, isReservedStorefrontSlug, isSaleUnitPrice, isShowcaseStorefrontSlug, isStoreScope, isWebOrigin, issueCouponRequestSchema, issueCouponResultSchema, kakaoPayCredentialsInputSchema, linkStorefrontGitInstallationRequestSchema, liveGateConditionCodeSchema, liveGateConditionSchema, liveGateErrorDetailsSchema, liveGateSchema, localeCodeSchema, loginProviderSchema, loginProviderStatusSchema, loginProviderTestSchema, loginSettingsSchema, marketSchema, maskedSecretSchema, matchesCollectionRules, mcpRuleResultSchema, mcpToolEventSchema, migrateFlowVersionRequestSchema, migrateFlowVersionResultSchema, minPaymentOf, minorToMajor, moneyRulesOf, moveFlowStateRequestSchema, moveStorefrontFileRequestSchema, myAccountSchema, myStoreSchema, naverPayCredentialsInputSchema, nightsOf, normalizeBusinessNumber, normalizeCouponCode, normalizeLocale, normalizeStorefrontHostname, normalizeStorefrontPath, oauthTokenResponseSchema, openFulfillmentUnion, optionGroupKindSchema, optionGroupRequestSchema, optionGroupSchema, optionModelRequestSchema, optionModelSchema, optionSelectionSchema, optionSortSchema, optionValueRequestSchema, optionValueSchema, orderCanceledWebhookEventDataSchema, orderCanceledWebhookEventSchema, orderDiscountSchema, orderFlowActionResultSchema, orderFulfilledWebhookEventDataSchema, orderFulfilledWebhookEventSchema, orderItemFlowSchema, orderItemFulfillmentSchema, orderItemFulfillmentSnapshotResponseSchema, orderItemFulfillmentSnapshotSchema, orderItemListQuerySchema, orderItemMemoResultSchema, orderItemPageSchema, orderItemSchema, orderItemStatusSchema, orderListQuerySchema, orderSchema, orderSummaryPageSchema, orderSummarySchema, orderWebhookEventDataSchema, orderWebhookEventSchema, pageInfoSchema, pageQueryShape, pageSchema, parseOrderNo, parseWebhookEvent, payPalCredentialsInputSchema, paymentAttemptRecordSchema, paymentAttemptStatusSchema, paymentCredentialSetSchema, paymentFailureWarningSchema, paymentListQuerySchema, paymentProviderSchema, paymentProviderVerificationSchema, paymentRecordDetailSchema, paymentRecordPageSchema, paymentRecordSchema, paymentRecordStatusSchema, paymentRefundRecordSchema, paymentSettingsSchema, paymentStatusProviderSchema, paymentStatusSchema, pgEnvironmentSchema, pgPaymentMethodSchema, pgProviderResponseSchema, pgProviderSchema, pgVerificationResultSchema, pickupLocationRequestSchema, pickupLocationSchema, pickupLocationSnapshotSchema, planCodeSchema, planEntitlementsSchema, planErrorDetailsSchema, platformCodeSchema, pointAdjustmentRequestSchema, pointAdjustmentResultSchema, pointEarnOf, pointEarnRateBpSchema, pointEarningEnabled, pointEntrySchema, pointExpiresAtOf, pointHistoryQuerySchema, pointLotSchema, pointPolicyNoticeSchema, pointPolicySchema, pointRestoreExpiresAtOf, pointUseOf, pointUsePolicySchema, policyDocumentUrlSchema, policyVersionSchema, portOneChannelSchema, portOneCredentialsInputSchema, productCertificationsRequestSchema, productCertificationsSchema, productCreateRequestSchema, productCurrencyPriceSchema, productCurrencyPricesSchema, productFulfillmentCreateSchema, productFulfillmentResponseSchema, productFulfillmentSchema, productFulfillmentUpdateSchema, productImageRejection, productImageUrlSchema, productListQuerySchema, productLocalizationNeedsTranslation, productLocalizationRequestSchema, productLocalizationSchema, productNoticeRequestSchema, productNoticeSchema, productOutOfStockWebhookEventDataSchema, productOutOfStockWebhookEventSchema, productPatchRequestSchema, productRefundPolicyOverride, productRefundPolicyPatchSchema, productReplaceRequestSchema, productSchema, productSortSchema, productStatusSchema, productSummarySchema, productVariantRequestSchema, productVariantSchema, proratedPaidRefundBase, proratedPointRefund, proratedRefundBase, publicPlanSchema, publicPlansSchema, publishStorefrontVersionRequestSchema, purchaseDecisionExtendResultSchema, purchaseDecisionRequestResultSchema, purchaseEarnPolicySchema, purchaseEarnRateOf, putBrandBriefRequestSchema, quoteDelivery, quotePricing, rankBestSelling, refreshUserToken, refundPolicyPatchSchema, refundPolicySchema, rejectClaimRequestSchema, remoteAreaLabelOf, remoteAreaOf, remoteAreaSchema, remoteSurchargeOf, replaceStorefrontSourceRequestSchema, replayFlowRequestSchema, replayFlowResultSchema, requiresCollection, requiresShipping, resolvePointPolicy, resolveRefundPolicy, resolveShippingPolicy, resolvedFlowSchema, responsePlanCodeSchema, responsePointEntryTypeSchema, reviewListQuerySchema, reviewReportResultSchema, reviewRewardPointOf, reviewRewardPolicySchema, reviewSchema, reviewSortSchema, reviewWebhookEventDataSchema, reviewWebhookEventSchema, rollbackStorefrontRequestSchema, runStorefrontCheckRequestSchema, salesReportCurrencySchema, salesReportGroupBySchema, salesReportQuerySchema, salesReportRowSchema, salesReportSchema, salesTotalsSchema, saveFlowDraftRequestSchema, saveFlowSecretRequestSchema, saveLoginProviderRequestSchema, savedCustomInputRequestSchema, savedCustomInputSchema, savedOptionGroupRequestSchema, savedOptionGroupSchema, savedOptionSetCompositionSchema, savedOptionSetFromProductRequestSchema, savedOptionSetFromProductResultSchema, savedOptionSetListQuerySchema, savedOptionSetLocalizationRequestSchema, savedOptionSetLocalizationSchema, savedOptionSetRequestSchema, savedOptionSetSchema, savedOptionSetSortSchema, savedOptionValueRequestSchema, savedOptionValueSchema, scopeAccessSchema, scopesCoverEvent, searchStorefrontFilesRequestSchema, sellerAddressListQuerySchema, sellerAddressRequestSchema, sellerAddressSchema, sellerCancelPreviewSchema, sellerCustomerInquirySchema, sendAiMessageRequestSchema, sendAiMessageResponseSchema, setCalendarRequestSchema, setPlatformTestKeysRequestSchema, setStorefrontDeployApprovalRequestSchema, setStorefrontVisibilityRequestSchema, settleCouponShortfall, settlementDetailQuerySchema, settlementDetailSchema, settlementListQuerySchema, settlementStatusSchema, settlementSummarySchema, settlementWithDetailsSchema, shippingAddressSchema, shippingCurrencyPriceSchema, shippingCurrencyPricesSchema, shippingPolicyPatchSchema, shippingPolicySchema, simulateFlowRequestSchema, simulateFlowResultSchema, simulationStepSchema, splitRefund, starterSellerTaskSchema, starterStageSchema, starterStatusSchema, starterStoreInfoFieldSchema, stayRangeSchema, staySnapshotSchema, storeAppDetailSchema, storeAppSchema, storeCodeSchema, storeDraftPreviewSchema, storeDraftSchema, storeIndustrySchema, storeMemberRoleUpdatedSchema, storeMemberSchema, storePointPolicySchema, storeRoleSchema, storeSchema, storeScopeResourceSchema, storeSetupBriefSchema, storeShopTypeSchema, storeSubscriptionSchema, storeTemplateSchema, storedAdditionalCurrencyPriceSchema, storedProductCurrencyPriceSchema, storedShippingCurrencyPriceSchema, storefrontBuildDependenciesSchema, storefrontBuildListQuerySchema, storefrontBuildSchema, storefrontBuildStatusSchema, storefrontCheckSchema, storefrontCheckStatusSchema, storefrontCustomDomainStatusSchema, storefrontCustomHostnameProblem, storefrontDependencyFindingSchema, storefrontDeploymentLogSchema, storefrontDeploymentSchema, storefrontDeploymentStepSchema, storefrontDevLogsSchema, storefrontDnsRecordSchema, storefrontDomainSchema, storefrontDomainTxtNameOf, storefrontEditPreviewLabelOf, storefrontEditPreviewSchema, storefrontEditSessionSchema, storefrontEditSessionStatusSchema, storefrontEditingSchema, storefrontFileConflictDetailsSchema, storefrontFileContentQuerySchema, storefrontFileContentSchema, storefrontFileDeleteResultSchema, storefrontFileEncodingSchema, storefrontFileEntrySchema, storefrontFileHashSchema, storefrontFileListQuerySchema, storefrontFileListSchema, storefrontFileMoveResultSchema, storefrontFilePathSchema, storefrontFileSearchResultSchema, storefrontFileWriteResultSchema, storefrontGitConnectStateSchema, storefrontGitRepositorySchema, storefrontGitStatusSchema, storefrontHostingSchema, storefrontPreviewLinkSchema, storefrontProvisioningSchema, storefrontRuleResultSchema, storefrontRuleSeveritySchema, storefrontSiteDomainSchema, storefrontSiteDomainsSchema, storefrontSiteSchema, storefrontSiteSnapshotSchema, storefrontSiteStatusSchema, storefrontSlugAvailabilityQuerySchema, storefrontSlugAvailabilitySchema, storefrontSlugSchema, storefrontSourceArchivePartSchema, storefrontSourceArchiveQuerySchema, storefrontSourceBlobsResultSchema, storefrontSourceModeSchema, storefrontSourceRefSchema, storefrontSourceReplacedSchema, storefrontSourceSchema, storefrontSuspensionSchema, storefrontTemplateSchema, storefrontVerifyReportSchema, storefrontVersionCreatedSchema, storefrontVersionPreviewLabelOf, storefrontVersionSchema, storefrontVersionStatusSchema, storefrontVisibilitySchema, subscriptionLimitsSchema, subscriptionStatusSchema, subscriptionUsageSchema, toDecimalString, toMinor, tossPaymentsCredentialsInputSchema, trackingStageResponseSchema, trackingUpdateResultSchema, unknownWebhookEventSchema, updateCouponRequestSchema, updateLoginProviderRequestSchema, updateLoginSettingsRequestSchema, updateMarketRequestSchema, updateMemberRoleRequestSchema, updatePaymentProviderRequestSchema, updatePaymentSettingsRequestSchema, updatePointPolicyRequestSchema, updateStoreRequestSchema, updateStoreTemplateRequestSchema, uploadExtensionOf, uploadPurposeSchema, uploadRejection, uploadRequestSchema, uploadStorefrontSourceBlobsRequestSchema, uploadTicketSchema, upsertKakaoPayProviderRequestSchema, upsertNaverPayProviderRequestSchema, upsertPayPalProviderRequestSchema, upsertPortOneProviderRequestSchema, upsertTossPaymentsProviderRequestSchema, variantStockRequestSchema, variantStockSchema, verifyPaymentProviderRequestSchema, webhookCreatedSchema, webhookDeliveryDetailSchema, webhookDeliveryErrorCodeSchema, webhookDeliveryListQuerySchema, webhookDeliveryResourceSchema, webhookDeliverySchema, webhookDeliveryStatusSchema, webhookEventSchema, webhookFailureReasonSchema, webhookRedeliverFailedResultSchema, webhookRequestHeaderSchema, webhookRequestSchema, webhookResourceTypeSchema, webhookSchema, webhookSecretRotatedSchema, webhookStatusSchema, webhookTestRequestSchema, webhookTestResultSchema, withdrawCustomerRequestSchema, writeDryRunResultSchema, writePreviewSchema, writeStorefrontFilesRequestSchema };