@sayren/store-sdk 0.30.19 → 0.31.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
@@ -2103,6 +2103,13 @@ const storefrontEditSessionSchema = z.object({
2103
2103
  const storefrontDevLogsSchema = z.object({
2104
2104
  stdout: z.string(),
2105
2105
  stderr: z.string(),
2106
+ browser: z.array(z.object({
2107
+ seq: z.number().int().describe("세션 안에서 오르는 순번"),
2108
+ at: z.string().describe("받은 시각"),
2109
+ level: z.enum(["error", "warn"]),
2110
+ message: z.string(),
2111
+ url: z.string().describe("로그를 남긴 페이지 경로")
2112
+ })).default([]).describe("편집 미리보기를 연 브라우저의 오류·경고(window 오류, 처리되지 않은 Promise 거부, console.error·warn) 최근 100건. 미리보기를 열어 둔 동안만 모인다"),
2106
2113
  at: z.string()
2107
2114
  });
2108
2115
  const storefrontEditingSchema = z.object({
@@ -2543,11 +2550,12 @@ const aiToolChangeSchema = z.object({
2543
2550
  });
2544
2551
  /**
2545
2552
  * 에이전트 작업 단계(2026-10-13, AI 상점 도우미 작업 공간) — 에이전트가 패널 도구로 알린다.
2546
- * 상점·상품·배포 준비 → 쇼핑몰 구조 설계 → 개발 환경 준비(라이브러리·SDK) → 코드 수정 루프 → 완료
2553
+ * 상점·상품·배포 준비 → 쇼핑몰 구조 설계 → 디자인(아트보드, 2026-10-14 사용자 결정) → 개발 환경 준비(라이브러리·SDK) → 코드 수정 루프 → 완료
2547
2554
  */
2548
2555
  const AI_AGENT_PHASES = [
2549
2556
  "STORE",
2550
2557
  "STRUCTURE",
2558
+ "DESIGN",
2551
2559
  "ENVIRONMENT",
2552
2560
  "BUILD",
2553
2561
  "DONE"
@@ -2571,17 +2579,112 @@ const aiTodoSchema = z.object({
2571
2579
  /** 할 일 번호(대화 안에서 1부터) — 옛 조각에는 없다 */
2572
2580
  id: z.string().max(10).optional(),
2573
2581
  content: z.string().min(1).max(200),
2574
- status: z.enum(AI_TODO_STATUSES)
2582
+ status: z.enum(AI_TODO_STATUSES),
2583
+ /** 이 할 일이 속한 작업 단계 — 진행중이 되면 실행기가 단계를 알린다(2026-10-14, 모델이 단계 알림을 빠뜨렸다) */
2584
+ phase: aiAgentPhaseSchema.optional()
2575
2585
  });
2576
2586
  const AI_TODOS_MAX = 30;
2577
2587
  function isAiAgentNotesPath(path) {
2578
2588
  return path === "src/site/agent" || path.startsWith(`src/site/agent/`);
2579
2589
  }
2580
2590
  /**
2591
+ * 디자인 아트보드 폴더(2026-10-14 사용자 결정, Claude Code Design 캔버스의 파일 계약을 옮겼다) — DESIGN 단계에 에이전트가 쓰는 자기완결 HTML 아트보드와
2592
+ * 인덱스 `canvas.json`이다. 앱 코드가 import하지 않아 발행 빌드에 들어가지 않고, 상점 플랫폼 작업 공간의 디자인 탭이 iframe(srcdoc)으로 그린다.
2593
+ * 코드 탭 트리에서는 작업 메모처럼 뺀다
2594
+ */
2595
+ const AI_DESIGN_DIR = "src/site/design";
2596
+ const AI_DESIGN_CANVAS_PATH = `${AI_DESIGN_DIR}/canvas.json`;
2597
+ function isAiDesignPath(path) {
2598
+ return path === "src/site/design" || path.startsWith(`src/site/design/`);
2599
+ }
2600
+ /** 아트보드 파일 이름 — `src/site/design/` 바로 아래의 `.html` 하나(폴더 없음) */
2601
+ const AI_DESIGN_BOARD_FILE_PATTERN = /^[a-z0-9][a-z0-9-]{0,63}\.html$/;
2602
+ const AI_DESIGN_BOARD_KINDS = [
2603
+ "direction",
2604
+ "page",
2605
+ "scene"
2606
+ ];
2607
+ const AI_DESIGN_VIEWPORTS = ["desktop", "mobile"];
2608
+ /** 아트보드 상한 — 사이트맵의 화면마다 아트보드를 그린다(2026-10-15 사용자 결정, 화면 로드맵 29개 + 방향 후보 + 모바일). 24에서 올렸다 */
2609
+ const AI_DESIGN_BOARDS_MAX = 64;
2610
+ /**
2611
+ * 아트보드 하나 — `file`은 `src/site/design/` 아래 파일 이름, `kind`는 방향(저충실 후보)·페이지(고충실 화면)·장면(모션 시안, 셀러가 스크롤하며 본다),
2612
+ * `viewport`는 데스크톱(1280)·모바일(390) 폭, `page`는 그 아트보드가 그리는 사이트 경로(구현 대조에 쓴다), `status`는 후보·채택·보관
2613
+ */
2614
+ const aiDesignBoardSchema = z.object({
2615
+ file: z.string().regex(AI_DESIGN_BOARD_FILE_PATTERN),
2616
+ title: z.string().min(1).max(60),
2617
+ kind: z.enum(AI_DESIGN_BOARD_KINDS),
2618
+ viewport: z.enum(AI_DESIGN_VIEWPORTS).default("desktop"),
2619
+ page: z.string().max(200).optional(),
2620
+ status: z.enum([
2621
+ "candidate",
2622
+ "chosen",
2623
+ "archived"
2624
+ ]).default("chosen")
2625
+ });
2626
+ const aiDesignCanvasSchema = z.object({
2627
+ version: z.literal(1),
2628
+ /** 정한 방향 이름 — 방향 선택지에서 셀러가 고른 뒤 적는다(이름을 바꾸지 않는다) */
2629
+ direction: z.string().max(80).nullable().default(null),
2630
+ boards: z.array(aiDesignBoardSchema).max(64),
2631
+ /** 캔버스에 붙이는 메모(장 전환 규칙 등) */
2632
+ notes: z.array(z.string().max(300)).max(20).default([])
2633
+ });
2634
+ /** 셀러가 디자인 탭에서 고른 아트보드(2026-10-14) — 메시지와 함께 보내면 모델은 그 아트보드를 기준으로 고친다 */
2635
+ const aiDesignSelectionSchema = z.object({
2636
+ file: z.string().regex(AI_DESIGN_BOARD_FILE_PATTERN),
2637
+ title: z.string().max(60)
2638
+ });
2639
+ /** 쇼핑몰 형태(#124, 2026-10-13) — 템플릿은 basic 하나이고 형태는 에이전트에게 주는 화면 구성 지시다 */
2640
+ const STORE_SHOP_TYPES = [
2641
+ "BASIC",
2642
+ "INTERACTIVE",
2643
+ "STORYTELLING",
2644
+ "MOBILE",
2645
+ "CATALOG",
2646
+ "LOOKBOOK"
2647
+ ];
2648
+ const storeShopTypeSchema = z.enum(STORE_SHOP_TYPES);
2649
+ /**
2650
+ * 선택지 하나 — `templateId`는 스토어프론트 템플릿을, `shopType`은 쇼핑몰 형태를 고르는 선택지일 때의 값이다(2026-10-14). 상점 플랫폼이 썸네일을 붙인다
2651
+ */
2652
+ const aiChoiceOptionSchema = z.object({
2653
+ label: z.string(),
2654
+ value: z.string(),
2655
+ templateId: z.string().max(64).optional(),
2656
+ /** 쇼핑몰 형태를 고르는 선택지면 그 형태 — 상점 플랫폼이 형태 와이어프레임을 붙인다 */
2657
+ shopType: storeShopTypeSchema.optional(),
2658
+ /** 디자인 방향을 고르는 선택지면 그 아트보드 파일(`src/site/design/` 아래) — 상점 플랫폼이 아트보드를 썸네일로 붙인다(2026-10-14) */
2659
+ boardFile: z.string().regex(AI_DESIGN_BOARD_FILE_PATTERN).optional()
2660
+ });
2661
+ /**
2662
+ * 쇼핑몰 만들기 확인(2026-10-14) — 에이전트가 대화로 모은 값(라벨·값)과 고른 템플릿을 보이고 「이렇게 쇼핑몰을 만들까요?」를 묻는다.
2663
+ * 셀러가 승인(`AI_SETUP_CONFIRM_APPROVE` 선택지)하면 만들기를 시작한다
2664
+ */
2665
+ const aiSetupConfirmItemSchema = z.object({
2666
+ label: z.string(),
2667
+ value: z.string()
2668
+ });
2669
+ /** 확인 카드의 승인 선택지 값 */
2670
+ const AI_SETUP_CONFIRM_APPROVE = "setup:approve";
2671
+ /**
2672
+ * 디자인 확인(2026-10-14 사용자 결정) — DESIGN 단계 끝에 에이전트가 채택한 아트보드를 카드로 보이고 「이 디자인으로 만들까요?」를 묻는다.
2673
+ * 셀러가 승인(`AI_DESIGN_CONFIRM_APPROVE` 선택지)해야 구현(ENVIRONMENT·BUILD)으로 넘어간다
2674
+ */
2675
+ const aiDesignConfirmBoardSchema = z.object({
2676
+ file: z.string().regex(AI_DESIGN_BOARD_FILE_PATTERN),
2677
+ title: z.string().max(60)
2678
+ });
2679
+ const AI_DESIGN_CONFIRM_APPROVE = "design:approve";
2680
+ /**
2581
2681
  * 화면에 그리는 메시지 조각. 모델 원문(tool_use 블록 등)은 api가 보관하고 화면에는 이 형태만 준다.
2582
2682
  * - `text`: 글
2583
2683
  * - `tool`: 도구 호출 한 번(이름은 사람이 읽는 라벨, 결과 요약·링크)
2584
2684
  * - `choices`: 선택지 버튼(가장 최근 것만 누를 수 있다)
2685
+ * - `setup_confirm`: 쇼핑몰 만들기 확인 카드(모은 값·템플릿, 승인은 뒤따르는 `choices`)
2686
+ * - `design_confirm`: 디자인 확인 카드(채택한 아트보드, 승인은 뒤따르는 `choices`)
2687
+ * - `design_selection`: 사용자가 디자인 탭에서 고른 아트보드
2585
2688
  * - `business_form`: 사업자 정보 입력 폼(가장 최근 것만 제출할 수 있다, 건너뛸 수 있다)
2586
2689
  * - `attachment`: 사용자가 올린 첨부
2587
2690
  * - `approval`: 승인 대기로 남은 쓰기
@@ -2615,19 +2718,29 @@ const aiMessagePartSchema = z.discriminatedUnion("type", [
2615
2718
  z.object({
2616
2719
  type: z.literal("choices"),
2617
2720
  question: z.string(),
2618
- options: z.array(z.object({
2619
- label: z.string(),
2620
- value: z.string()
2621
- })).min(1).max(6)
2721
+ options: z.array(aiChoiceOptionSchema).min(1).max(6)
2622
2722
  }),
2623
2723
  z.object({
2624
2724
  type: z.literal("business_form"),
2625
2725
  question: z.string()
2626
2726
  }),
2727
+ z.object({
2728
+ type: z.literal("setup_confirm"),
2729
+ items: z.array(aiSetupConfirmItemSchema).max(12),
2730
+ templateId: z.string().max(64).optional()
2731
+ }),
2732
+ z.object({
2733
+ type: z.literal("design_confirm"),
2734
+ boards: z.array(aiDesignConfirmBoardSchema).min(1).max(64)
2735
+ }),
2627
2736
  z.object({
2628
2737
  type: z.literal("attachment"),
2629
2738
  attachment: aiAttachmentSchema
2630
2739
  }),
2740
+ z.object({
2741
+ type: z.literal("design_selection"),
2742
+ selection: aiDesignSelectionSchema
2743
+ }),
2631
2744
  z.object({
2632
2745
  type: z.literal("approval"),
2633
2746
  approvalId: z.string(),
@@ -2670,16 +2783,6 @@ const aiConversationSchema = aiConversationSummarySchema.extend({
2670
2783
  /** 마지막 실행(진행 중이 아니면 결과 표시용) */
2671
2784
  lastRun: aiRunSchema.nullable()
2672
2785
  });
2673
- /** 쇼핑몰 형태(#124, 2026-10-13) — 템플릿은 basic 하나이고 형태는 에이전트에게 주는 화면 구성 지시다 */
2674
- const STORE_SHOP_TYPES = [
2675
- "BASIC",
2676
- "INTERACTIVE",
2677
- "STORYTELLING",
2678
- "MOBILE",
2679
- "CATALOG",
2680
- "LOOKBOOK"
2681
- ];
2682
- const storeShopTypeSchema = z.enum(STORE_SHOP_TYPES);
2683
2786
  /**
2684
2787
  * AI 상점 만들기 질문 화면의 답(#124, 2026-10-13) — 화면이 고정 질문으로 모은다. 초안과 함께 첫 메시지가 된다.
2685
2788
  * 배송비는 묻지 않는다(설정하지 않으면 무료배송). `slug`는 바라는 주소이고 쓸 수 있는지는 에이전트가 사이트를 만들 때 확인한다
@@ -2710,7 +2813,9 @@ const sendAiMessageRequestSchema = z.object({
2710
2813
  /** 선택지 버튼으로 보낸 답이면 그 값(화면 표시는 `text`) */
2711
2814
  choice: z.string().max(200).optional(),
2712
2815
  /** 편집 미리보기에서 고른 요소(#65) — 모델은 이 요소를 기준으로 고친다 */
2713
- selection: aiPreviewSelectionSchema.optional()
2816
+ selection: aiPreviewSelectionSchema.optional(),
2817
+ /** 디자인 탭에서 고른 아트보드(2026-10-14) — 모델은 그 아트보드를 기준으로 고친다 */
2818
+ designSelection: aiDesignSelectionSchema.optional()
2714
2819
  }).refine((body) => body.text.length > 0 || body.attachments.length > 0, { message: "내용이나 첨부가 있어야 합니다" });
2715
2820
  const sendAiMessageResponseSchema = aiStreamAccessSchema.extend({ messageId: z.string() });
2716
2821
  /**
@@ -2846,16 +2951,24 @@ const aiStreamEventSchema = z.discriminatedUnion("type", [
2846
2951
  type: z.literal("choices"),
2847
2952
  messageId: z.string(),
2848
2953
  question: z.string(),
2849
- options: z.array(z.object({
2850
- label: z.string(),
2851
- value: z.string()
2852
- }))
2954
+ options: z.array(aiChoiceOptionSchema)
2853
2955
  }),
2854
2956
  z.object({
2855
2957
  type: z.literal("business_form"),
2856
2958
  messageId: z.string(),
2857
2959
  question: z.string()
2858
2960
  }),
2961
+ z.object({
2962
+ type: z.literal("setup_confirm"),
2963
+ messageId: z.string(),
2964
+ items: z.array(aiSetupConfirmItemSchema),
2965
+ templateId: z.string().max(64).optional()
2966
+ }),
2967
+ z.object({
2968
+ type: z.literal("design_confirm"),
2969
+ messageId: z.string(),
2970
+ boards: z.array(aiDesignConfirmBoardSchema)
2971
+ }),
2859
2972
  z.object({
2860
2973
  type: z.literal("approval"),
2861
2974
  messageId: z.string(),
@@ -7852,7 +7965,20 @@ const loginProviderTestSchema = z.object({
7852
7965
  * 웹훅 시크릿)은 저장 후 다시 조회할 수 없다. 응답에는 앞 4자리 마스킹만 나온다. 공개 값
7853
7966
  * (클라이언트 키·Store ID·채널 키)은 원래 브라우저 결제창에 노출되는 값이라 그대로 돌려준다.
7854
7967
  */
7855
- const pgProviderSchema = z.enum(["tosspayments", "portone"]).describe("PG 식별자. `tosspayments`=토스페이먼츠, `portone`=포트원(V2)");
7968
+ const pgProviderSchema = z.enum([
7969
+ "tosspayments",
7970
+ "portone",
7971
+ "kakaopay",
7972
+ "naverpay"
7973
+ ]).describe("PG 식별자. `tosspayments`=토스페이먼츠, `portone`=포트원(V2), `kakaopay`=카카오페이(직접 연동), `naverpay`=네이버페이 결제형(직접 연동)");
7974
+ /**
7975
+ * 간편결제 전용 PG — 결제수단이 간편결제 하나이고 간편결제사가 PG 자신이다(`kakaopay` → `KAKAOPAY`).
7976
+ * 이 PG는 `easyPayProviders` 설정 없이 결제 옵션이 하나(`EASY_PAY` + 그 간편결제사) 나온다
7977
+ */
7978
+ const DEDICATED_EASY_PAY_PROVIDER = {
7979
+ kakaopay: "KAKAOPAY",
7980
+ naverpay: "NAVERPAY"
7981
+ };
7856
7982
  const pgPaymentMethodSchema = z.enum([
7857
7983
  "CARD",
7858
7984
  "BANK_TRANSFER",
@@ -7923,6 +8049,17 @@ const portOneCredentialsInputSchema = z.object({
7923
8049
  apiSecret: secretInput().optional().describe("V2 API Secret. 비밀 값. 최초 연결 시 필수, 수정 시 생략하면 기존 값을 유지한다"),
7924
8050
  webhookSecret: secretInput().nullable().optional().describe("웹훅 서명 검증용 시크릿. 비밀 값. 생략하면 기존 값 유지, null이면 삭제")
7925
8051
  });
8052
+ /** 카카오페이 테스트 가맹점 코드 — 카카오페이 개발자센터의 단건 결제 테스트 CID */
8053
+ const KAKAOPAY_TEST_CID = "TC0ONETIME";
8054
+ const kakaoPayCredentialsInputSchema = z.object({
8055
+ cid: z.string().trim().min(4).max(20).describe("가맹점 코드(CID). 카카오페이와 계약하면 받는다. 공개 값. 테스트 세트는 `TC0ONETIME`(단건 결제 테스트 CID)을 쓸 수 있다"),
8056
+ secretKey: secretInput().optional().describe("카카오페이 개발자센터 앱의 Secret key(테스트 세트는 dev, 실결제 세트는 운영 키). 비밀 값. 최초 연결 시 필수, 수정 시 생략하면 기존 값을 유지한다")
8057
+ });
8058
+ const naverPayCredentialsInputSchema = z.object({
8059
+ clientId: z.string().trim().min(4).max(100).describe("네이버페이 결제형 가입 후 받은 Client ID. 공개 값 — 결제창에서 쓰인다"),
8060
+ chainId: z.string().trim().min(4).max(100).describe("네이버페이 Chain ID. 공개 값 — 결제창과 API 요청에 쓰인다"),
8061
+ clientSecret: secretInput().optional().describe("Client Secret. 비밀 값. 최초 연결 시 필수, 수정 시 생략하면 기존 값을 유지한다")
8062
+ });
7926
8063
  const upsertEnvironment = () => pgEnvironmentSchema.describe("저장할 자격 증명 세트. PG마다 `TEST`(샌드박스)·`LIVE`(실결제) 세트를 따로 둔다. 어느 세트로 결제할지는 이 값이 아니라 샌드박스 스위치(`sandboxMode`)가 정한다");
7927
8064
  const upsertTossPaymentsProviderRequestSchema = z.object({
7928
8065
  environment: upsertEnvironment(),
@@ -7932,6 +8069,14 @@ const upsertPortOneProviderRequestSchema = z.object({
7932
8069
  environment: upsertEnvironment(),
7933
8070
  credentials: portOneCredentialsInputSchema
7934
8071
  });
8072
+ const upsertKakaoPayProviderRequestSchema = z.object({
8073
+ environment: upsertEnvironment(),
8074
+ credentials: kakaoPayCredentialsInputSchema
8075
+ });
8076
+ const upsertNaverPayProviderRequestSchema = z.object({
8077
+ environment: upsertEnvironment(),
8078
+ credentials: naverPayCredentialsInputSchema
8079
+ });
7935
8080
  const updatePaymentProviderRequestSchema = z.object({
7936
8081
  enabled: z.boolean().optional().describe("사용 여부. 켜려면 활성 환경(샌드박스면 TEST, 아니면 LIVE) 자격 증명이 모두 저장돼 있어야 한다(`PAYMENT_PROVIDER_INCOMPLETE`)"),
7937
8082
  sandboxMode: z.boolean().optional().describe("샌드박스 스위치. `true`면 새 결제에 TEST 세트를 쓴다(항상 허용). `false`(라이브 전환)는 라이브 개방 조건을 모두 충족해야 한다(`LIVE_GATE_NOT_MET`)"),
@@ -7947,10 +8092,18 @@ const maskedSecretSchema = z.object({
7947
8092
  configured: z.boolean().describe("값이 저장돼 있는가"),
7948
8093
  masked: z.string().nullable().describe("앞 4자리만 남긴 마스킹 값 (예: `test****`). 저장되지 않았으면 null")
7949
8094
  });
7950
- const publicConfigSchema = z.union([z.object({ clientKey: z.string() }), z.object({
7951
- storeId: z.string(),
7952
- channels: z.array(portOneChannelSchema)
7953
- })]);
8095
+ const publicConfigSchema = z.union([
8096
+ z.object({ clientKey: z.string() }),
8097
+ z.object({
8098
+ storeId: z.string(),
8099
+ channels: z.array(portOneChannelSchema)
8100
+ }),
8101
+ z.object({ cid: z.string() }),
8102
+ z.object({
8103
+ clientId: z.string(),
8104
+ chainId: z.string()
8105
+ })
8106
+ ]);
7954
8107
  const verificationSchema = z.object({
7955
8108
  result: pgVerificationResultSchema,
7956
8109
  message: z.string().nullable(),
@@ -7958,7 +8111,7 @@ const verificationSchema = z.object({
7958
8111
  });
7959
8112
  const paymentCredentialSetSchema = z.object({
7960
8113
  environment: pgEnvironmentSchema,
7961
- publicConfig: publicConfigSchema.describe("공개 값. 토스페이먼츠는 `{clientKey}`, 포트원은 `{storeId, channels}`"),
8114
+ publicConfig: publicConfigSchema.describe("공개 값. 토스페이먼츠는 `{clientKey}`, 포트원은 `{storeId, channels}`, 카카오페이는 `{cid}`, 네이버페이는 `{clientId, chainId}`"),
7962
8115
  secrets: z.array(maskedSecretSchema).describe("비밀 값의 저장 여부와 마스킹. 평문은 어떤 응답에도 나오지 않는다"),
7963
8116
  lastVerification: verificationSchema.nullable().describe("이 세트의 마지막 연결 테스트 결과. 세트를 바꾸면 초기화된다"),
7964
8117
  updatedAt: z.string()
@@ -7994,7 +8147,7 @@ const paymentProviderSchema = z.object({
7994
8147
  enabled: z.boolean().describe("결제에 사용 중인가"),
7995
8148
  priority: z.number().int().nullable().describe("우선순위 (1이 가장 높다). 연결되지 않았으면 null"),
7996
8149
  environment: pgEnvironmentSchema.nullable().describe("새 결제에 쓰는 환경(활성 환경). 샌드박스 스위치가 켜져 있으면 `TEST`, 꺼져 있으면 `LIVE`. 연결되지 않았으면 null"),
7997
- publicConfig: publicConfigSchema.nullable().describe("활성 환경 세트의 공개 값. 토스페이먼츠는 `{clientKey}`, 포트원은 `{storeId, channels}`. 활성 세트가 없으면 null"),
8150
+ publicConfig: publicConfigSchema.nullable().describe("활성 환경 세트의 공개 값. 토스페이먼츠는 `{clientKey}`, 포트원은 `{storeId, channels}`, 카카오페이는 `{cid}`, 네이버페이는 `{clientId, chainId}`. 활성 세트가 없으면 null"),
7998
8151
  secrets: z.array(maskedSecretSchema).describe("활성 환경 세트의 비밀 값 저장 여부와 마스킹. 평문은 어떤 응답에도 나오지 않는다"),
7999
8152
  lastVerification: verificationSchema.nullable().describe("활성 환경 세트의 마지막 연결 테스트 결과. 세트를 바꾸면 초기화된다"),
8000
8153
  updatedAt: z.string().nullable(),
@@ -8004,6 +8157,8 @@ const paymentProviderSchema = z.object({
8004
8157
  LIVE: paymentCredentialSetSchema.nullable()
8005
8158
  }).describe("환경별 자격 증명 세트. 등록되지 않은 세트는 null"),
8006
8159
  liveGate: liveGateSchema.describe("라이브 개방 조건. 조건을 모두 충족해야 샌드박스를 끌 수 있다"),
8160
+ platformTestKeys: z.boolean().optional().default(false).describe("테스트모드 키 활성화. `true`면 TEST 세트가 sayren 지정 테스트 키로 고정된다(TEST 세트를 직접 저장·제거하면 409 `PLATFORM_TEST_KEYS_ENABLED`)"),
8161
+ platformTestKeysAvailable: z.boolean().optional().default(false).describe("이 PG에 sayren 지정 테스트 키가 있어 테스트모드 키를 켤 수 있는가"),
8007
8162
  easyPayProviders: z.array(easyPayProviderResponseSchema).describe("이 PG로 받는 간편결제사. 연결되지 않았으면 빈 목록. 현재 값은 `NAVERPAY`·`KAKAOPAY`·`TOSSPAY`·`PAYCO`이고 값이 추가될 수 있어 문자열로 받는다"),
8008
8163
  retiredCredentialCount: z.number().int().describe("보관된(가맹점 교체·연결 해제로 새 결제에 더 쓰이지 않는) 자격 증명 수. 그 가맹점으로 받은 결제의 환불·대사에 계속 쓰인다"),
8009
8164
  routingExclusion: z.string().nullable().optional().default(null).describe("지금 새 결제의 후보가 아닌 사유. 후보면 null. 판정 원천은 서버 라우팅이다(상점 플랫폼이 다시 계산하지 않는다). 후보가 아닌 PG에는 항상 사유 코드를 붙인다(연결 안 된 PG 포함) — 모든 PG는 `candidates`에 있거나 이 값이 null이 아니다. 현재 값: `NOT_CONNECTED`(연결 안 됨) · `DISABLED`(사용 중지) · `CREDENTIAL_MISSING`(활성 환경 자격 증명 없음) · `SANDBOX_IN_LIVE_STORE`(다른 PG가 라이브라 이 샌드박스 PG는 실구매자 결제에 쓰지 않음) · `PLATFORM_BLOCKED`(플랫폼이 실결제를 막음) · `MODE_MISMATCH`(라이브를 연 서버 모드와 현재 모드가 다름). 값이 추가될 수 있어 문자열로 받는다 — 모르는 값은 후보 아님으로 다룬다. 서버는 항상 싣는다. 이 필드가 없는 이전 서버 응답은 기본값(null)으로 읽는다")
@@ -8036,7 +8191,8 @@ const paymentFailureWarningSchema = z.object({
8036
8191
  });
8037
8192
  const paymentSettingsSchema = z.object({
8038
8193
  checkoutOrigins: z.array(z.string()).describe("결제 도메인 — 결제를 마친 구매자가 돌아올 스토어프론트 origin 목록"),
8039
- providers: z.array(paymentProviderSchema).describe("지원하는 모든 PG. 연결된 것은 우선순위순, 연결되지 않은 것은 뒤에 온다"),
8194
+ providers: z.array(paymentProviderSchema).describe("연결된 PG(우선순위순)와 연결되지 않은 토스페이먼츠·포트원. 카카오페이·네이버페이는 연결했을 때만 여기에 온다(이 PG를 모르는 이전 SDK가 응답을 읽을 수 있게). 연결할 수 있는 PG 전체는 `connectableProviders`다"),
8195
+ connectableProviders: z.array(paymentProviderSchema).optional().default(() => []).describe("연결되지 않은 PG 전체(카카오페이·네이버페이 포함). 서버는 항상 싣는다. 이 필드가 없는 이전 서버 응답은 기본값(빈 배열)으로 읽는다"),
8040
8196
  environment: pgEnvironmentSchema.nullable().optional().default(null).describe("지금 결제를 시작하면 쓰는 결제 환경. 사용 가능한 PG 중 하나라도 라이브면 `LIVE`(샌드박스 PG는 제외), 아니면 `TEST`. 사용 가능한 PG가 없으면 null. 서버는 항상 싣는다. 이 필드가 없는 이전 서버 응답은 기본값(null)으로 읽는다"),
8041
8197
  candidates: z.array(z.string()).optional().default(() => []).describe("지금 결제를 시작하면 쓰는 PG, 우선순위순(`tosspayments`·`portone`). 비어 있으면 구매자가 결제할 수 없다. 빠진 PG의 사유는 `providers[].routingExclusion` — 후보가 아닌 PG에는 항상 사유 코드를 붙인다. 서버는 항상 싣는다. 이 필드가 없는 이전 서버 응답은 기본값(빈 배열)으로 읽는다"),
8042
8198
  warnings: z.array(paymentFailureWarningSchema).optional().default(() => []).describe("최근 24시간 안에 같은 PG·결제수단·간편결제사가 가맹점 설정 문제로 3번 이상 실패한 조합, 마지막 실패가 최근인 순. 판정 규칙은 서버가 정하고 바뀔 수 있다. 서버는 항상 싣는다. 이 필드가 없는 이전 서버 응답은 기본값(빈 배열)으로 읽는다")
@@ -8213,6 +8369,23 @@ const paymentListQuerySchema = z.object({
8213
8369
  page: z.string().optional().describe("페이지 번호 (1부터)"),
8214
8370
  size: z.string().optional().describe("페이지 크기 (기본 20, 최대 100)")
8215
8371
  });
8372
+ /** 테스트모드 키 활성화 요청(2026-10-14) — `PUT /v1/store/payment-providers/{provider}/platform-test-keys` */
8373
+ const setPlatformTestKeysRequestSchema = z.object({ enabled: z.boolean().describe("`true`면 sayren 지정 테스트 키를 TEST 세트로 저장하고 PG를 켠다. `false`면 고정만 푼다(TEST 세트는 그대로)") });
8374
+ /** 결제 상태 PG 한 줄 — 비밀 값·공개 키 없이 연결·사용·환경·테스트모드 키만 */
8375
+ const paymentStatusProviderSchema = z.object({
8376
+ provider: pgProviderSchema,
8377
+ displayName: z.string(),
8378
+ connected: z.boolean().describe("자격 증명이 저장돼 있는가"),
8379
+ enabled: z.boolean().describe("결제에 사용 중인가"),
8380
+ environment: pgEnvironmentSchema.nullable().describe("새 결제에 쓰는 환경. 연결되지 않았으면 null"),
8381
+ platformTestKeys: z.boolean().describe("테스트모드 키 활성화 여부"),
8382
+ platformTestKeysAvailable: z.boolean().describe("sayren 지정 테스트 키로 바로 켤 수 있는가")
8383
+ });
8384
+ /** 결제 상태(2026-10-14) — `GET /v1/store/payment-status`. 지원 PG 전체와 상점의 연결 상태 */
8385
+ const paymentStatusSchema = z.object({
8386
+ environment: pgEnvironmentSchema.nullable().describe("새 결제 세션의 환경(사용 중인 PG 기준). 쓸 수 있는 PG가 없으면 null"),
8387
+ providers: z.array(paymentStatusProviderSchema).describe("sayren이 지원하는 PG 전체(연결 안 된 PG 포함)")
8388
+ });
8216
8389
  //#endregion
8217
8390
  //#region src/schemas/order.ts
8218
8391
  const orderSummarySchema = z.object({
@@ -9414,6 +9587,16 @@ get: (params) => storeHttp.request("GET", "/sales-report", salesReportSchema, {
9414
9587
  */
9415
9588
  upsertPortOne: (body) => storeHttp.request("PUT", "/store/payment-providers/portone", paymentProviderSchema, { body: upsertPortOneProviderRequestSchema.parse(body) }),
9416
9589
  /**
9590
+ * `PUT /v1/store/payment-providers/kakaopay` — 카카오페이(직접 연동) 자격 증명 세트 저장. 규칙·에러는 `upsertTossPayments`와 같다
9591
+ * (가맹점 식별자는 `cid`, 비밀 필드는 `secretKey`). 결제 옵션은 간편결제(`KAKAOPAY`) 하나다.
9592
+ */
9593
+ upsertKakaoPay: (body) => storeHttp.request("PUT", "/store/payment-providers/kakaopay", paymentProviderSchema, { body: upsertKakaoPayProviderRequestSchema.parse(body) }),
9594
+ /**
9595
+ * `PUT /v1/store/payment-providers/naverpay` — 네이버페이 결제형(직접 연동) 자격 증명 세트 저장. 규칙·에러는 `upsertTossPayments`와 같다
9596
+ * (가맹점 식별자는 `clientId`, 비밀 필드는 `clientSecret`). 결제 옵션은 간편결제(`NAVERPAY`) 하나다.
9597
+ */
9598
+ upsertNaverPay: (body) => storeHttp.request("PUT", "/store/payment-providers/naverpay", paymentProviderSchema, { body: upsertNaverPayProviderRequestSchema.parse(body) }),
9599
+ /**
9417
9600
  * `PATCH /v1/store/payment-providers/{provider}` — 사용 여부(`enabled`)·샌드박스 스위치(`sandboxMode`) 변경.
9418
9601
  * 하나 이상 보내야 한다(아니면 요청 전에 ZodError). 검증을 모두 통과해야 한 번에 적용된다(부분 적용 없음).
9419
9602
  * 끈 PG로 승인된 결제의 환불은 계속 그 PG로 간다.
@@ -9434,6 +9617,13 @@ get: (params) => storeHttp.request("GET", "/sales-report", salesReportSchema, {
9434
9617
  */
9435
9618
  setSandboxMode: (provider, sandboxMode) => updatePaymentProvider(provider, { sandboxMode }),
9436
9619
  /**
9620
+ * `PUT /v1/store/payment-providers/{provider}/platform-test-keys` — 테스트모드 키 활성화. 켜면 sayren 지정 테스트 키를 TEST 세트로 저장하고 PG를 켠다
9621
+ * (OWNER·ADMIN, 에이전트도 쓸 수 있다). 에러: 409 `PLATFORM_TEST_KEYS_UNAVAILABLE`(그 PG의 지정 테스트 키가 없다)
9622
+ */
9623
+ setPlatformTestKeys: (provider, enabled) => storeHttp.request("PUT", path`/store/payment-providers/${pgProviderSchema.parse(provider)}/platform-test-keys`, paymentStatusProviderSchema, { body: setPlatformTestKeysRequestSchema.parse({ enabled }) }),
9624
+ /** `GET /v1/store/payment-status` — 지원 PG와 연결·사용·테스트모드 키 상태(비밀 값 없음, OWNER·ADMIN·에이전트) */
9625
+ status: () => storeHttp.request("GET", "/store/payment-status", paymentStatusSchema),
9626
+ /**
9437
9627
  * `DELETE /v1/store/payment-providers/{provider}` (204) — 연결 해제. 결제 이력과 무관하게 허용된다.
9438
9628
  * 모든 세트는 보관되고 PG 설정에서 사라진다. 이미 받은 결제의 취소·환불·대사는 보관된 자격 증명으로 계속 처리된다.
9439
9629
  * 404 `PAYMENT_PROVIDER_NOT_FOUND`.
@@ -10110,4 +10300,4 @@ function createStoreSession(options) {
10110
10300
  };
10111
10301
  }
10112
10302
  //#endregion
10113
- export { AI_AGENT_NOTES_DIR, AI_AGENT_PHASES, AI_MESSAGE_MAX_ATTACHMENTS, AI_MESSAGE_MAX_CHARS, AI_RUN_ACTIVE_STATUSES, AI_RUN_FILE_CHANGES_RETENTION_DAYS, 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, BRAND_BRIEF_MAX_REFERENCES, BUSINESS_INFO_MAX_LENGTH, BUSINESS_NUMBER_PATTERN, CASH_RECEIPT_STATUS_VALUES, 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, CUSTOM_INPUT_FORBIDDEN_WORDS, CUSTOM_INPUT_TYPES, FULFILLMENT_METHODS, FULFILLMENT_METHODS_BY_TYPE, FULFILLMENT_METHOD_RULES, FULFILLMENT_RULES, INSTALLABLE_SCOPES, KNOWN_WEBHOOK_EVENT_TYPES, MAX_ADDON_GROUPS, MAX_ANALYTICS_ALLOWED_ORIGINS, MAX_AUTO_TRANSITION_DAYS, MAX_CALENDAR_DAYS, 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_OPTION_GROUPS, MAX_PICKUP_LOCATIONS, MAX_PRODUCT_IMAGES, 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, 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, addonGroupRequestSchema, addonGroupSchema, addonValueRequestSchema, addonValueSchema, addressChangeRequestListSchema, addressTypeSchema, agentPolicyDecisionSchema, aiActivitySchema, aiAgentPhaseSchema, aiAttachmentSchema, aiConversationFileChangesSchema, aiConversationSchema, aiConversationSummarySchema, aiFileChangeKindSchema, aiFocusAreaSchema, aiFocusSchema, aiMessagePartSchema, aiMessageSchema, aiPreviewSelectionSchema, aiRunChangesSchema, aiRunChangesStatusSchema, aiRunFileDiffSchema, aiRunRevertConflictDetailsSchema, aiRunRevertResultSchema, aiRunSchema, aiRunStatusSchema, 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, 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, categoryPatchRequestSchema, categoryProductSortSchema, categorySchema, categorySearchResultSchema, categoryTreeNodeSchema, categoryWithPathSchema, changeStorefrontSlugRequestSchema, changeStorefrontTemplateRequestSchema, changeTypeSchema, claimDetailSchema, claimHoldResultSchema, claimListQuerySchema, claimReasonSchema, 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, createPkcePair, createStoreClient, createStoreDraftRequestSchema, createStoreDraftResponseSchema, createStoreSession, createStorefrontEditPreviewLinkRequestSchema, createStorefrontPreviewLinkRequestSchema, createStorefrontSiteRequestSchema, createStorefrontVersionRequestSchema, 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, flowActionRequestSchema, flowActionResultSchema, flowActionSchema, flowFieldValueSchema, flowInputFieldSchema, flowNodeTypesSchema, flowNotificationWebhookEventDataSchema, flowNotificationWebhookEventSchema, flowPresetDetailSchema, flowPresetSummarySchema, flowRunSchema, flowRunStepSchema, flowSecretNameSchema, flowSecretSchema, flowStateChangedWebhookEventDataSchema, flowStateChangedWebhookEventSchema, flowStateSchema, formatOrderNo, fulfillBulkRequestSchema, fulfillRequestSchema, fulfillmentMethodOf, fulfillmentMethodSchema, fulfillmentMethodsOf, fulfillmentRuleOf, fulfillmentTypeOf, fulfillmentTypeResponseSchema, fulfillmentTypeSchema, holdOrderItemRequestSchema, inquiryListQuerySchema, inquirySchema, inquiryWebhookEventDataSchema, inquiryWebhookEventSchema, inventoryModeSchema, invitationDeliveryStatusSchema, invitationListQuerySchema, invitationSchema, inviteMemberRequestSchema, isAiAgentNotesPath, isCouponTargetLine, isEditableStorefrontPath, isInstallableScope, isReservedStoreCode, isReservedStorefrontSlug, isShowcaseStorefrontSlug, isStoreScope, isWebOrigin, issueCouponRequestSchema, issueCouponResultSchema, liveGateConditionCodeSchema, liveGateConditionSchema, liveGateErrorDetailsSchema, liveGateSchema, loginProviderSchema, loginProviderStatusSchema, loginProviderTestSchema, loginSettingsSchema, maskedSecretSchema, matchesCollectionRules, mcpRuleResultSchema, mcpToolEventSchema, migrateFlowVersionRequestSchema, migrateFlowVersionResultSchema, moveFlowStateRequestSchema, moveStorefrontFileRequestSchema, myAccountSchema, myStoreSchema, nightsOf, normalizeBusinessNumber, normalizeCouponCode, 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, paymentAttemptRecordSchema, paymentAttemptStatusSchema, paymentCredentialSetSchema, paymentFailureWarningSchema, paymentListQuerySchema, paymentProviderSchema, paymentProviderVerificationSchema, paymentRecordDetailSchema, paymentRecordPageSchema, paymentRecordSchema, paymentRecordStatusSchema, paymentRefundRecordSchema, paymentSettingsSchema, pgEnvironmentSchema, pgPaymentMethodSchema, pgProviderSchema, pgVerificationResultSchema, pickupLocationRequestSchema, pickupLocationSchema, pickupLocationSnapshotSchema, planCodeSchema, planEntitlementsSchema, planErrorDetailsSchema, pointAdjustmentRequestSchema, pointAdjustmentResultSchema, pointEarnOf, pointEarnRateBpSchema, pointEarningEnabled, pointEntrySchema, pointExpiresAtOf, pointHistoryQuerySchema, pointLotSchema, pointPolicyNoticeSchema, pointPolicySchema, pointRestoreExpiresAtOf, pointUseOf, pointUsePolicySchema, policyDocumentUrlSchema, policyVersionSchema, portOneChannelSchema, portOneCredentialsInputSchema, productCreateRequestSchema, productFulfillmentCreateSchema, productFulfillmentResponseSchema, productFulfillmentSchema, productFulfillmentUpdateSchema, productImageRejection, productImageUrlSchema, productListQuerySchema, 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, 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, setStorefrontVisibilityRequestSchema, settleCouponShortfall, settlementDetailQuerySchema, settlementDetailSchema, settlementListQuerySchema, settlementStatusSchema, settlementSummarySchema, settlementWithDetailsSchema, shippingAddressSchema, 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, 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, tossPaymentsCredentialsInputSchema, trackingStageResponseSchema, trackingUpdateResultSchema, unknownWebhookEventSchema, updateCouponRequestSchema, updateLoginProviderRequestSchema, updateLoginSettingsRequestSchema, updateMemberRoleRequestSchema, updatePaymentProviderRequestSchema, updatePaymentSettingsRequestSchema, updatePointPolicyRequestSchema, updateStoreRequestSchema, updateStoreTemplateRequestSchema, uploadExtensionOf, uploadPurposeSchema, uploadRejection, uploadRequestSchema, uploadStorefrontSourceBlobsRequestSchema, uploadTicketSchema, 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 };
10303
+ 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, BRAND_BRIEF_MAX_REFERENCES, BUSINESS_INFO_MAX_LENGTH, BUSINESS_NUMBER_PATTERN, CASH_RECEIPT_STATUS_VALUES, 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, CUSTOM_INPUT_FORBIDDEN_WORDS, CUSTOM_INPUT_TYPES, DEDICATED_EASY_PAY_PROVIDER, FULFILLMENT_METHODS, FULFILLMENT_METHODS_BY_TYPE, FULFILLMENT_METHOD_RULES, FULFILLMENT_RULES, INSTALLABLE_SCOPES, KAKAOPAY_TEST_CID, KNOWN_WEBHOOK_EVENT_TYPES, MAX_ADDON_GROUPS, MAX_ANALYTICS_ALLOWED_ORIGINS, MAX_AUTO_TRANSITION_DAYS, MAX_CALENDAR_DAYS, 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_OPTION_GROUPS, MAX_PICKUP_LOCATIONS, MAX_PRODUCT_IMAGES, 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, 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, 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, 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, categoryPatchRequestSchema, categoryProductSortSchema, categorySchema, categorySearchResultSchema, categoryTreeNodeSchema, categoryWithPathSchema, changeStorefrontSlugRequestSchema, changeStorefrontTemplateRequestSchema, changeTypeSchema, claimDetailSchema, claimHoldResultSchema, claimListQuerySchema, claimReasonSchema, 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, createPkcePair, createStoreClient, createStoreDraftRequestSchema, createStoreDraftResponseSchema, createStoreSession, createStorefrontEditPreviewLinkRequestSchema, createStorefrontPreviewLinkRequestSchema, createStorefrontSiteRequestSchema, createStorefrontVersionRequestSchema, 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, flowActionRequestSchema, flowActionResultSchema, flowActionSchema, flowFieldValueSchema, flowInputFieldSchema, flowNodeTypesSchema, flowNotificationWebhookEventDataSchema, flowNotificationWebhookEventSchema, flowPresetDetailSchema, flowPresetSummarySchema, flowRunSchema, flowRunStepSchema, flowSecretNameSchema, flowSecretSchema, flowStateChangedWebhookEventDataSchema, flowStateChangedWebhookEventSchema, flowStateSchema, formatOrderNo, fulfillBulkRequestSchema, fulfillRequestSchema, fulfillmentMethodOf, fulfillmentMethodSchema, fulfillmentMethodsOf, fulfillmentRuleOf, fulfillmentTypeOf, fulfillmentTypeResponseSchema, fulfillmentTypeSchema, holdOrderItemRequestSchema, inquiryListQuerySchema, inquirySchema, inquiryWebhookEventDataSchema, inquiryWebhookEventSchema, inventoryModeSchema, invitationDeliveryStatusSchema, invitationListQuerySchema, invitationSchema, inviteMemberRequestSchema, isAiAgentNotesPath, isAiDesignPath, isCouponTargetLine, isEditableStorefrontPath, isInstallableScope, isReservedStoreCode, isReservedStorefrontSlug, isShowcaseStorefrontSlug, isStoreScope, isWebOrigin, issueCouponRequestSchema, issueCouponResultSchema, kakaoPayCredentialsInputSchema, liveGateConditionCodeSchema, liveGateConditionSchema, liveGateErrorDetailsSchema, liveGateSchema, loginProviderSchema, loginProviderStatusSchema, loginProviderTestSchema, loginSettingsSchema, maskedSecretSchema, matchesCollectionRules, mcpRuleResultSchema, mcpToolEventSchema, migrateFlowVersionRequestSchema, migrateFlowVersionResultSchema, moveFlowStateRequestSchema, moveStorefrontFileRequestSchema, myAccountSchema, myStoreSchema, naverPayCredentialsInputSchema, nightsOf, normalizeBusinessNumber, normalizeCouponCode, 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, paymentAttemptRecordSchema, paymentAttemptStatusSchema, paymentCredentialSetSchema, paymentFailureWarningSchema, paymentListQuerySchema, paymentProviderSchema, paymentProviderVerificationSchema, paymentRecordDetailSchema, paymentRecordPageSchema, paymentRecordSchema, paymentRecordStatusSchema, paymentRefundRecordSchema, paymentSettingsSchema, paymentStatusProviderSchema, paymentStatusSchema, pgEnvironmentSchema, pgPaymentMethodSchema, pgProviderSchema, pgVerificationResultSchema, pickupLocationRequestSchema, pickupLocationSchema, pickupLocationSnapshotSchema, planCodeSchema, planEntitlementsSchema, planErrorDetailsSchema, pointAdjustmentRequestSchema, pointAdjustmentResultSchema, pointEarnOf, pointEarnRateBpSchema, pointEarningEnabled, pointEntrySchema, pointExpiresAtOf, pointHistoryQuerySchema, pointLotSchema, pointPolicyNoticeSchema, pointPolicySchema, pointRestoreExpiresAtOf, pointUseOf, pointUsePolicySchema, policyDocumentUrlSchema, policyVersionSchema, portOneChannelSchema, portOneCredentialsInputSchema, productCreateRequestSchema, productFulfillmentCreateSchema, productFulfillmentResponseSchema, productFulfillmentSchema, productFulfillmentUpdateSchema, productImageRejection, productImageUrlSchema, productListQuerySchema, 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, 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, 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, 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, tossPaymentsCredentialsInputSchema, trackingStageResponseSchema, trackingUpdateResultSchema, unknownWebhookEventSchema, updateCouponRequestSchema, updateLoginProviderRequestSchema, updateLoginSettingsRequestSchema, updateMemberRoleRequestSchema, updatePaymentProviderRequestSchema, updatePaymentSettingsRequestSchema, updatePointPolicyRequestSchema, updateStoreRequestSchema, updateStoreTemplateRequestSchema, uploadExtensionOf, uploadPurposeSchema, uploadRejection, uploadRequestSchema, uploadStorefrontSourceBlobsRequestSchema, uploadTicketSchema, upsertKakaoPayProviderRequestSchema, upsertNaverPayProviderRequestSchema, 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 };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sayren/store-sdk",
3
- "version": "0.30.19",
3
+ "version": "0.31.0",
4
4
  "main": "./dist/index.mjs",
5
5
  "types": "./dist/index.d.mts",
6
6
  "exports": {
package/src/client.ts CHANGED
@@ -226,17 +226,24 @@ import {
226
226
  paymentRecordPageSchema,
227
227
  paymentRefundRecordSchema,
228
228
  paymentSettingsSchema,
229
+ paymentStatusProviderSchema,
230
+ paymentStatusSchema,
229
231
  pgEnvironmentSchema,
230
232
  pgProviderSchema,
231
233
  type SalesReportParams,
232
234
  salesReportQuerySchema,
233
235
  salesReportSchema,
236
+ setPlatformTestKeysRequestSchema,
234
237
  type UpdatePaymentProviderRequest,
235
238
  type UpdatePaymentSettingsRequest,
239
+ type UpsertKakaoPayProviderRequest,
240
+ type UpsertNaverPayProviderRequest,
236
241
  type UpsertPortOneProviderRequest,
237
242
  type UpsertTossPaymentsProviderRequest,
238
243
  updatePaymentProviderRequestSchema,
239
244
  updatePaymentSettingsRequestSchema,
245
+ upsertKakaoPayProviderRequestSchema,
246
+ upsertNaverPayProviderRequestSchema,
240
247
  upsertPortOneProviderRequestSchema,
241
248
  upsertTossPaymentsProviderRequestSchema,
242
249
  type VerifyPaymentProviderRequest,
@@ -1395,6 +1402,22 @@ export function createStoreClient(options: StoreClientOptions) {
1395
1402
  storeHttp.request("PUT", "/store/payment-providers/portone", paymentProviderSchema, {
1396
1403
  body: upsertPortOneProviderRequestSchema.parse(body),
1397
1404
  }),
1405
+ /**
1406
+ * `PUT /v1/store/payment-providers/kakaopay` — 카카오페이(직접 연동) 자격 증명 세트 저장. 규칙·에러는 `upsertTossPayments`와 같다
1407
+ * (가맹점 식별자는 `cid`, 비밀 필드는 `secretKey`). 결제 옵션은 간편결제(`KAKAOPAY`) 하나다.
1408
+ */
1409
+ upsertKakaoPay: (body: UpsertKakaoPayProviderRequest) =>
1410
+ storeHttp.request("PUT", "/store/payment-providers/kakaopay", paymentProviderSchema, {
1411
+ body: upsertKakaoPayProviderRequestSchema.parse(body),
1412
+ }),
1413
+ /**
1414
+ * `PUT /v1/store/payment-providers/naverpay` — 네이버페이 결제형(직접 연동) 자격 증명 세트 저장. 규칙·에러는 `upsertTossPayments`와 같다
1415
+ * (가맹점 식별자는 `clientId`, 비밀 필드는 `clientSecret`). 결제 옵션은 간편결제(`NAVERPAY`) 하나다.
1416
+ */
1417
+ upsertNaverPay: (body: UpsertNaverPayProviderRequest) =>
1418
+ storeHttp.request("PUT", "/store/payment-providers/naverpay", paymentProviderSchema, {
1419
+ body: upsertNaverPayProviderRequestSchema.parse(body),
1420
+ }),
1398
1421
  /**
1399
1422
  * `PATCH /v1/store/payment-providers/{provider}` — 사용 여부(`enabled`)·샌드박스 스위치(`sandboxMode`) 변경.
1400
1423
  * 하나 이상 보내야 한다(아니면 요청 전에 ZodError). 검증을 모두 통과해야 한 번에 적용된다(부분 적용 없음).
@@ -1416,6 +1439,19 @@ export function createStoreClient(options: StoreClientOptions) {
1416
1439
  */
1417
1440
  setSandboxMode: (provider: PgProvider, sandboxMode: boolean) =>
1418
1441
  updatePaymentProvider(provider, { sandboxMode }),
1442
+ /**
1443
+ * `PUT /v1/store/payment-providers/{provider}/platform-test-keys` — 테스트모드 키 활성화. 켜면 sayren 지정 테스트 키를 TEST 세트로 저장하고 PG를 켠다
1444
+ * (OWNER·ADMIN, 에이전트도 쓸 수 있다). 에러: 409 `PLATFORM_TEST_KEYS_UNAVAILABLE`(그 PG의 지정 테스트 키가 없다)
1445
+ */
1446
+ setPlatformTestKeys: (provider: PgProvider, enabled: boolean) =>
1447
+ storeHttp.request(
1448
+ "PUT",
1449
+ path`/store/payment-providers/${pgProviderSchema.parse(provider)}/platform-test-keys`,
1450
+ paymentStatusProviderSchema,
1451
+ { body: setPlatformTestKeysRequestSchema.parse({ enabled }) },
1452
+ ),
1453
+ /** `GET /v1/store/payment-status` — 지원 PG와 연결·사용·테스트모드 키 상태(비밀 값 없음, OWNER·ADMIN·에이전트) */
1454
+ status: () => storeHttp.request("GET", "/store/payment-status", paymentStatusSchema),
1419
1455
  /**
1420
1456
  * `DELETE /v1/store/payment-providers/{provider}` (204) — 연결 해제. 결제 이력과 무관하게 허용된다.
1421
1457
  * 모든 세트는 보관되고 PG 설정에서 사라진다. 이미 받은 결제의 취소·환불·대사는 보관된 자격 증명으로 계속 처리된다.