@sayren/store-sdk 0.30.10 → 0.30.11

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.d.mts CHANGED
@@ -166,8 +166,8 @@ export declare const auditLogPageSchema: z.ZodObject<{
166
166
  export type AuditLogPage = z.infer<typeof auditLogPageSchema>;
167
167
  export declare const agentPolicyDecisionSchema: z.ZodEnum<{
168
168
  DENIED: "DENIED";
169
- ALLOW: "ALLOW";
170
169
  APPROVAL_REQUIRED: "APPROVAL_REQUIRED";
170
+ ALLOW: "ALLOW";
171
171
  }>;
172
172
  export type AgentPolicyDecision = z.infer<typeof agentPolicyDecisionSchema>;
173
173
  export declare const writePreviewSchema: z.ZodObject<{
@@ -192,8 +192,8 @@ export declare const writeDryRunResultSchema: z.ZodObject<{
192
192
  dryRun: z.ZodLiteral<true>;
193
193
  decision: z.ZodEnum<{
194
194
  DENIED: "DENIED";
195
- ALLOW: "ALLOW";
196
195
  APPROVAL_REQUIRED: "APPROVAL_REQUIRED";
196
+ ALLOW: "ALLOW";
197
197
  }>;
198
198
  reason: z.ZodNullable<z.ZodString>;
199
199
  preview: z.ZodObject<{
@@ -2504,6 +2504,36 @@ export declare const appInstallationSchema: z.ZodObject<{
2504
2504
  }>;
2505
2505
  versionNumber: z.ZodNumber;
2506
2506
  pendingVersionNumber: z.ZodNullable<z.ZodNumber>;
2507
+ pendingVersion: z.ZodOptional<z.ZodNullable<z.ZodObject<{
2508
+ number: z.ZodNumber;
2509
+ scopes: z.ZodArray<z.ZodString>;
2510
+ networkHosts: z.ZodArray<z.ZodString>;
2511
+ events: z.ZodArray<z.ZodEnum<{
2512
+ "ORDER.PAID": "ORDER.PAID";
2513
+ "ORDER.CONFIRMED": "ORDER.CONFIRMED";
2514
+ "ORDER.DISPATCHED": "ORDER.DISPATCHED";
2515
+ "ORDER.DELIVERED": "ORDER.DELIVERED";
2516
+ "ORDER.PURCHASE_DECIDED": "ORDER.PURCHASE_DECIDED";
2517
+ "ORDER.ADDRESS_CHANGE_REQUESTED": "ORDER.ADDRESS_CHANGE_REQUESTED";
2518
+ "ORDER.CANCELED": "ORDER.CANCELED";
2519
+ "ORDER.FULFILLED": "ORDER.FULFILLED";
2520
+ "CLAIM.CANCEL_REQUESTED": "CLAIM.CANCEL_REQUESTED";
2521
+ "CLAIM.RETURN_REQUESTED": "CLAIM.RETURN_REQUESTED";
2522
+ "CLAIM.EXCHANGE_REQUESTED": "CLAIM.EXCHANGE_REQUESTED";
2523
+ "CLAIM.COMPLETED": "CLAIM.COMPLETED";
2524
+ "INQUIRY.CREATED": "INQUIRY.CREATED";
2525
+ "REVIEW.CREATED": "REVIEW.CREATED";
2526
+ "PRODUCT.OUT_OF_STOCK": "PRODUCT.OUT_OF_STOCK";
2527
+ "ORDER.FLOW_NOTIFICATION": "ORDER.FLOW_NOTIFICATION";
2528
+ "ORDER.FLOW_STATE_CHANGED": "ORDER.FLOW_STATE_CHANGED";
2529
+ "APP.INSTALLED": "APP.INSTALLED";
2530
+ "APP.UNINSTALLED": "APP.UNINSTALLED";
2531
+ "APP.SETTINGS_UPDATED": "APP.SETTINGS_UPDATED";
2532
+ "APP.SCOPES_UPDATED": "APP.SCOPES_UPDATED";
2533
+ "APP.STORE_REDACT": "APP.STORE_REDACT";
2534
+ "APP.CUSTOMER_REDACT": "APP.CUSTOMER_REDACT";
2535
+ }>>;
2536
+ }, z.core.$strip>>>;
2507
2537
  grantedScopes: z.ZodArray<z.ZodString>;
2508
2538
  grantedNetworkHosts: z.ZodArray<z.ZodString>;
2509
2539
  events: z.ZodArray<z.ZodEnum<{
@@ -2563,6 +2593,67 @@ export declare const appInstallationSchema: z.ZodObject<{
2563
2593
  updatedAt: z.ZodString;
2564
2594
  }, z.core.$strip>;
2565
2595
  export type AppInstallation = z.infer<typeof appInstallationSchema>;
2596
+ /** 실행 기록 한 줄 — 앱에 보낸 이벤트 하나의 전송 결과. 로그 본문은 개발자만 본다(매뉴얼 「앱 설치와 관리」) */
2597
+ export declare const appInstallationRunSchema: z.ZodObject<{
2598
+ deliveryId: z.ZodString;
2599
+ eventType: z.ZodString;
2600
+ status: z.ZodEnum<{
2601
+ PENDING: "PENDING";
2602
+ PENDING_RETRY: "PENDING_RETRY";
2603
+ SUCCESS: "SUCCESS";
2604
+ FAILED: "FAILED";
2605
+ }>;
2606
+ errorCode: z.ZodNullable<z.ZodEnum<{
2607
+ TIMEOUT: "TIMEOUT";
2608
+ CONNECTION_FAILED: "CONNECTION_FAILED";
2609
+ BLOCKED_ADDRESS: "BLOCKED_ADDRESS";
2610
+ NON_2XX: "NON_2XX";
2611
+ WEBHOOK_SUSPENDED: "WEBHOOK_SUSPENDED";
2612
+ APP_ERROR: "APP_ERROR";
2613
+ APP_LIMIT_EXCEEDED: "APP_LIMIT_EXCEEDED";
2614
+ APP_REJECTED: "APP_REJECTED";
2615
+ APP_UNCONFIGURED: "APP_UNCONFIGURED";
2616
+ APP_INACTIVE: "APP_INACTIVE";
2617
+ APP_RUNNER_UNAVAILABLE: "APP_RUNNER_UNAVAILABLE";
2618
+ }>>;
2619
+ attemptCount: z.ZodNumber;
2620
+ createdAt: z.ZodString;
2621
+ attemptedAt: z.ZodNullable<z.ZodString>;
2622
+ nextAttemptAt: z.ZodNullable<z.ZodString>;
2623
+ }, z.core.$strip>;
2624
+ export type AppInstallationRun = z.infer<typeof appInstallationRunSchema>;
2625
+ /** `GET /v1/apps/installations/{id}/activity` — 최근 이벤트 전송 결과(50건)와 최근 7일 관리 API 호출 수 */
2626
+ export declare const appInstallationActivitySchema: z.ZodObject<{
2627
+ runs: z.ZodArray<z.ZodObject<{
2628
+ deliveryId: z.ZodString;
2629
+ eventType: z.ZodString;
2630
+ status: z.ZodEnum<{
2631
+ PENDING: "PENDING";
2632
+ PENDING_RETRY: "PENDING_RETRY";
2633
+ SUCCESS: "SUCCESS";
2634
+ FAILED: "FAILED";
2635
+ }>;
2636
+ errorCode: z.ZodNullable<z.ZodEnum<{
2637
+ TIMEOUT: "TIMEOUT";
2638
+ CONNECTION_FAILED: "CONNECTION_FAILED";
2639
+ BLOCKED_ADDRESS: "BLOCKED_ADDRESS";
2640
+ NON_2XX: "NON_2XX";
2641
+ WEBHOOK_SUSPENDED: "WEBHOOK_SUSPENDED";
2642
+ APP_ERROR: "APP_ERROR";
2643
+ APP_LIMIT_EXCEEDED: "APP_LIMIT_EXCEEDED";
2644
+ APP_REJECTED: "APP_REJECTED";
2645
+ APP_UNCONFIGURED: "APP_UNCONFIGURED";
2646
+ APP_INACTIVE: "APP_INACTIVE";
2647
+ APP_RUNNER_UNAVAILABLE: "APP_RUNNER_UNAVAILABLE";
2648
+ }>>;
2649
+ attemptCount: z.ZodNumber;
2650
+ createdAt: z.ZodString;
2651
+ attemptedAt: z.ZodNullable<z.ZodString>;
2652
+ nextAttemptAt: z.ZodNullable<z.ZodString>;
2653
+ }, z.core.$strip>>;
2654
+ apiCalls7d: z.ZodNumber;
2655
+ }, z.core.$strip>;
2656
+ export type AppInstallationActivity = z.infer<typeof appInstallationActivitySchema>;
2566
2657
  /**
2567
2658
  * `POST /v1/apps/installations`(상점 플랫폼 전용) — 둘 중 하나다.
2568
2659
  * - `{ result }`: accounts 설치 동의 결과(1회용 JWT). 개발자 포털 [내 상점에 설치]가 이 길로 온다
@@ -9044,11 +9135,11 @@ export declare const productPatchRequestSchema: z.ZodObject<{
9044
9135
  }, z.core.$strict>;
9045
9136
  export type ProductPatchRequest = z.infer<typeof productPatchRequestSchema>;
9046
9137
  export declare const productSortSchema: z.ZodEnum<{
9047
- "updatedAt.desc": "updatedAt.desc";
9048
9138
  "createdAt.desc": "createdAt.desc";
9049
9139
  "createdAt.asc": "createdAt.asc";
9050
9140
  "salePrice.asc": "salePrice.asc";
9051
9141
  "salePrice.desc": "salePrice.desc";
9142
+ "updatedAt.desc": "updatedAt.desc";
9052
9143
  }>;
9053
9144
  export type ProductSort = z.infer<typeof productSortSchema>;
9054
9145
  export interface ProductListParams extends PageParams {
@@ -9075,11 +9166,11 @@ export declare const productListQuerySchema: z.ZodObject<{
9075
9166
  sellerCode: z.ZodOptional<z.ZodString>;
9076
9167
  productNo: z.ZodOptional<z.ZodString>;
9077
9168
  sort: z.ZodOptional<z.ZodEnum<{
9078
- "updatedAt.desc": "updatedAt.desc";
9079
9169
  "createdAt.desc": "createdAt.desc";
9080
9170
  "createdAt.asc": "createdAt.asc";
9081
9171
  "salePrice.asc": "salePrice.asc";
9082
9172
  "salePrice.desc": "salePrice.desc";
9173
+ "updatedAt.desc": "updatedAt.desc";
9083
9174
  }>>;
9084
9175
  }, z.core.$strip>;
9085
9176
  export declare const discountRequestSchema: z.ZodObject<{
@@ -15900,6 +15991,12 @@ export declare function createStoreClient(options: StoreClientOptions): {
15900
15991
  installedAt: string;
15901
15992
  uninstalledAt: string | null;
15902
15993
  updatedAt: string;
15994
+ pendingVersion?: {
15995
+ number: number;
15996
+ scopes: string[];
15997
+ networkHosts: string[];
15998
+ events: ("ORDER.PAID" | "ORDER.CONFIRMED" | "ORDER.DISPATCHED" | "ORDER.DELIVERED" | "ORDER.PURCHASE_DECIDED" | "ORDER.ADDRESS_CHANGE_REQUESTED" | "ORDER.CANCELED" | "ORDER.FULFILLED" | "CLAIM.CANCEL_REQUESTED" | "CLAIM.RETURN_REQUESTED" | "CLAIM.EXCHANGE_REQUESTED" | "CLAIM.COMPLETED" | "INQUIRY.CREATED" | "REVIEW.CREATED" | "PRODUCT.OUT_OF_STOCK" | "ORDER.FLOW_NOTIFICATION" | "ORDER.FLOW_STATE_CHANGED" | "APP.INSTALLED" | "APP.UNINSTALLED" | "APP.SETTINGS_UPDATED" | "APP.SCOPES_UPDATED" | "APP.STORE_REDACT" | "APP.CUSTOMER_REDACT")[];
15999
+ } | null | undefined;
15903
16000
  }>;
15904
16001
  list: () => Promise<{
15905
16002
  installationId: string;
@@ -15947,6 +16044,12 @@ export declare function createStoreClient(options: StoreClientOptions): {
15947
16044
  installedAt: string;
15948
16045
  uninstalledAt: string | null;
15949
16046
  updatedAt: string;
16047
+ pendingVersion?: {
16048
+ number: number;
16049
+ scopes: string[];
16050
+ networkHosts: string[];
16051
+ events: ("ORDER.PAID" | "ORDER.CONFIRMED" | "ORDER.DISPATCHED" | "ORDER.DELIVERED" | "ORDER.PURCHASE_DECIDED" | "ORDER.ADDRESS_CHANGE_REQUESTED" | "ORDER.CANCELED" | "ORDER.FULFILLED" | "CLAIM.CANCEL_REQUESTED" | "CLAIM.RETURN_REQUESTED" | "CLAIM.EXCHANGE_REQUESTED" | "CLAIM.COMPLETED" | "INQUIRY.CREATED" | "REVIEW.CREATED" | "PRODUCT.OUT_OF_STOCK" | "ORDER.FLOW_NOTIFICATION" | "ORDER.FLOW_STATE_CHANGED" | "APP.INSTALLED" | "APP.UNINSTALLED" | "APP.SETTINGS_UPDATED" | "APP.SCOPES_UPDATED" | "APP.STORE_REDACT" | "APP.CUSTOMER_REDACT")[];
16052
+ } | null | undefined;
15950
16053
  }[]>;
15951
16054
  get: (installationId: string) => Promise<{
15952
16055
  installationId: string;
@@ -15994,6 +16097,12 @@ export declare function createStoreClient(options: StoreClientOptions): {
15994
16097
  installedAt: string;
15995
16098
  uninstalledAt: string | null;
15996
16099
  updatedAt: string;
16100
+ pendingVersion?: {
16101
+ number: number;
16102
+ scopes: string[];
16103
+ networkHosts: string[];
16104
+ events: ("ORDER.PAID" | "ORDER.CONFIRMED" | "ORDER.DISPATCHED" | "ORDER.DELIVERED" | "ORDER.PURCHASE_DECIDED" | "ORDER.ADDRESS_CHANGE_REQUESTED" | "ORDER.CANCELED" | "ORDER.FULFILLED" | "CLAIM.CANCEL_REQUESTED" | "CLAIM.RETURN_REQUESTED" | "CLAIM.EXCHANGE_REQUESTED" | "CLAIM.COMPLETED" | "INQUIRY.CREATED" | "REVIEW.CREATED" | "PRODUCT.OUT_OF_STOCK" | "ORDER.FLOW_NOTIFICATION" | "ORDER.FLOW_STATE_CHANGED" | "APP.INSTALLED" | "APP.UNINSTALLED" | "APP.SETTINGS_UPDATED" | "APP.SCOPES_UPDATED" | "APP.STORE_REDACT" | "APP.CUSTOMER_REDACT")[];
16105
+ } | null | undefined;
15997
16106
  }>;
15998
16107
  /** 비밀 필드를 생략하면 현재 값을 유지한다. null은 비운다 */
15999
16108
  updateSettings: (installationId: string, body: AppInstallationSettingsUpdate) => Promise<{
@@ -16042,8 +16151,82 @@ export declare function createStoreClient(options: StoreClientOptions): {
16042
16151
  installedAt: string;
16043
16152
  uninstalledAt: string | null;
16044
16153
  updatedAt: string;
16154
+ pendingVersion?: {
16155
+ number: number;
16156
+ scopes: string[];
16157
+ networkHosts: string[];
16158
+ events: ("ORDER.PAID" | "ORDER.CONFIRMED" | "ORDER.DISPATCHED" | "ORDER.DELIVERED" | "ORDER.PURCHASE_DECIDED" | "ORDER.ADDRESS_CHANGE_REQUESTED" | "ORDER.CANCELED" | "ORDER.FULFILLED" | "CLAIM.CANCEL_REQUESTED" | "CLAIM.RETURN_REQUESTED" | "CLAIM.EXCHANGE_REQUESTED" | "CLAIM.COMPLETED" | "INQUIRY.CREATED" | "REVIEW.CREATED" | "PRODUCT.OUT_OF_STOCK" | "ORDER.FLOW_NOTIFICATION" | "ORDER.FLOW_STATE_CHANGED" | "APP.INSTALLED" | "APP.UNINSTALLED" | "APP.SETTINGS_UPDATED" | "APP.SCOPES_UPDATED" | "APP.STORE_REDACT" | "APP.CUSTOMER_REDACT")[];
16159
+ } | null | undefined;
16045
16160
  }>;
16046
16161
  remove: (installationId: string) => Promise<void>;
16162
+ /** 실행 기록 — 최근 이벤트 전송 결과와 최근 7일 관리 API 호출 수 */
16163
+ activity: (installationId: string) => Promise<{
16164
+ runs: {
16165
+ deliveryId: string;
16166
+ eventType: string;
16167
+ status: "PENDING" | "PENDING_RETRY" | "SUCCESS" | "FAILED";
16168
+ errorCode: "TIMEOUT" | "CONNECTION_FAILED" | "BLOCKED_ADDRESS" | "NON_2XX" | "WEBHOOK_SUSPENDED" | "APP_ERROR" | "APP_LIMIT_EXCEEDED" | "APP_REJECTED" | "APP_UNCONFIGURED" | "APP_INACTIVE" | "APP_RUNNER_UNAVAILABLE" | null;
16169
+ attemptCount: number;
16170
+ createdAt: string;
16171
+ attemptedAt: string | null;
16172
+ nextAttemptAt: string | null;
16173
+ }[];
16174
+ apiCalls7d: number;
16175
+ }>;
16176
+ /** 권한 업데이트 동의 — 넓어진 새 버전(`pendingVersion`)으로 옮긴다(상점 플랫폼 전용) */
16177
+ consent: (installationId: string) => Promise<{
16178
+ installationId: string;
16179
+ storeId: string;
16180
+ app: {
16181
+ appId: string;
16182
+ handle: string;
16183
+ name: string;
16184
+ iconUrl: string | null;
16185
+ description: string | null;
16186
+ developerName: string;
16187
+ supportEmail: string | null;
16188
+ distribution: "PRIVATE_OWN" | "PRIVATE_LINK" | "LISTED";
16189
+ runtime: "CODE" | "EXTERNAL";
16190
+ status: "SUSPENDED" | "ACTIVE" | "DELETED";
16191
+ };
16192
+ status: "SUSPENDED" | "ACTIVE" | "UNINSTALLED";
16193
+ versionNumber: number;
16194
+ pendingVersionNumber: number | null;
16195
+ grantedScopes: string[];
16196
+ grantedNetworkHosts: string[];
16197
+ events: ("ORDER.PAID" | "ORDER.CONFIRMED" | "ORDER.DISPATCHED" | "ORDER.DELIVERED" | "ORDER.PURCHASE_DECIDED" | "ORDER.ADDRESS_CHANGE_REQUESTED" | "ORDER.CANCELED" | "ORDER.FULFILLED" | "CLAIM.CANCEL_REQUESTED" | "CLAIM.RETURN_REQUESTED" | "CLAIM.EXCHANGE_REQUESTED" | "CLAIM.COMPLETED" | "INQUIRY.CREATED" | "REVIEW.CREATED" | "PRODUCT.OUT_OF_STOCK" | "ORDER.FLOW_NOTIFICATION" | "ORDER.FLOW_STATE_CHANGED" | "APP.INSTALLED" | "APP.UNINSTALLED" | "APP.SETTINGS_UPDATED" | "APP.SCOPES_UPDATED" | "APP.STORE_REDACT" | "APP.CUSTOMER_REDACT")[];
16198
+ adminPage: boolean;
16199
+ settings: {
16200
+ fields: Record<string, {
16201
+ type: "string" | "number" | "boolean" | "select";
16202
+ label: string;
16203
+ description?: string | undefined;
16204
+ required?: boolean | undefined;
16205
+ secret?: boolean | undefined;
16206
+ options?: {
16207
+ value: string;
16208
+ label: string;
16209
+ }[] | undefined;
16210
+ default?: string | number | boolean | undefined;
16211
+ }>;
16212
+ values: Record<string, string | number | boolean | null>;
16213
+ configured: boolean;
16214
+ updatedAt: string | null;
16215
+ };
16216
+ installedBy: {
16217
+ userId: string;
16218
+ name: string | null;
16219
+ } | null;
16220
+ installedAt: string;
16221
+ uninstalledAt: string | null;
16222
+ updatedAt: string;
16223
+ pendingVersion?: {
16224
+ number: number;
16225
+ scopes: string[];
16226
+ networkHosts: string[];
16227
+ events: ("ORDER.PAID" | "ORDER.CONFIRMED" | "ORDER.DISPATCHED" | "ORDER.DELIVERED" | "ORDER.PURCHASE_DECIDED" | "ORDER.ADDRESS_CHANGE_REQUESTED" | "ORDER.CANCELED" | "ORDER.FULFILLED" | "CLAIM.CANCEL_REQUESTED" | "CLAIM.RETURN_REQUESTED" | "CLAIM.EXCHANGE_REQUESTED" | "CLAIM.COMPLETED" | "INQUIRY.CREATED" | "REVIEW.CREATED" | "PRODUCT.OUT_OF_STOCK" | "ORDER.FLOW_NOTIFICATION" | "ORDER.FLOW_STATE_CHANGED" | "APP.INSTALLED" | "APP.UNINSTALLED" | "APP.SETTINGS_UPDATED" | "APP.SCOPES_UPDATED" | "APP.STORE_REDACT" | "APP.CUSTOMER_REDACT")[];
16228
+ } | null | undefined;
16229
+ }>;
16047
16230
  /** 앱 화면 iframe에 넘길 세션 토큰(5분) */
16048
16231
  session: (installationId: string) => Promise<{
16049
16232
  token: string;