@sayren/store-sdk 0.28.3 → 0.29.1
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 +899 -144
- package/dist/index.mjs +2539 -2112
- package/package.json +1 -1
- package/src/client.ts +116 -0
- package/src/index.ts +2 -0
- package/src/schemas/collection.ts +250 -0
- package/src/schemas/points.ts +285 -0
- package/src/schemas/product.ts +19 -0
package/dist/index.d.mts
CHANGED
|
@@ -33,8 +33,8 @@ export declare const auditLogSourceSchema: z.ZodEnum<{
|
|
|
33
33
|
}>;
|
|
34
34
|
export type AuditLogSource = z.infer<typeof auditLogSourceSchema>;
|
|
35
35
|
export declare const auditLogOutcomeSchema: z.ZodEnum<{
|
|
36
|
-
FAILED: "FAILED";
|
|
37
36
|
SUCCEEDED: "SUCCEEDED";
|
|
37
|
+
FAILED: "FAILED";
|
|
38
38
|
PENDING_APPROVAL: "PENDING_APPROVAL";
|
|
39
39
|
DENIED: "DENIED";
|
|
40
40
|
DRY_RUN: "DRY_RUN";
|
|
@@ -69,8 +69,8 @@ export declare const auditLogSchema: z.ZodObject<{
|
|
|
69
69
|
path: z.ZodNullable<z.ZodString>;
|
|
70
70
|
statusCode: z.ZodNullable<z.ZodNumber>;
|
|
71
71
|
outcome: z.ZodNullable<z.ZodEnum<{
|
|
72
|
-
FAILED: "FAILED";
|
|
73
72
|
SUCCEEDED: "SUCCEEDED";
|
|
73
|
+
FAILED: "FAILED";
|
|
74
74
|
PENDING_APPROVAL: "PENDING_APPROVAL";
|
|
75
75
|
DENIED: "DENIED";
|
|
76
76
|
DRY_RUN: "DRY_RUN";
|
|
@@ -102,8 +102,8 @@ export declare const auditLogListQuerySchema: z.ZodObject<{
|
|
|
102
102
|
DOMAIN: "DOMAIN";
|
|
103
103
|
}>>;
|
|
104
104
|
outcome: z.ZodOptional<z.ZodEnum<{
|
|
105
|
-
FAILED: "FAILED";
|
|
106
105
|
SUCCEEDED: "SUCCEEDED";
|
|
106
|
+
FAILED: "FAILED";
|
|
107
107
|
PENDING_APPROVAL: "PENDING_APPROVAL";
|
|
108
108
|
DENIED: "DENIED";
|
|
109
109
|
DRY_RUN: "DRY_RUN";
|
|
@@ -149,8 +149,8 @@ export declare const auditLogPageSchema: z.ZodObject<{
|
|
|
149
149
|
path: z.ZodNullable<z.ZodString>;
|
|
150
150
|
statusCode: z.ZodNullable<z.ZodNumber>;
|
|
151
151
|
outcome: z.ZodNullable<z.ZodEnum<{
|
|
152
|
-
FAILED: "FAILED";
|
|
153
152
|
SUCCEEDED: "SUCCEEDED";
|
|
153
|
+
FAILED: "FAILED";
|
|
154
154
|
PENDING_APPROVAL: "PENDING_APPROVAL";
|
|
155
155
|
DENIED: "DENIED";
|
|
156
156
|
DRY_RUN: "DRY_RUN";
|
|
@@ -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
|
-
APPROVAL_REQUIRED: "APPROVAL_REQUIRED";
|
|
170
169
|
ALLOW: "ALLOW";
|
|
170
|
+
APPROVAL_REQUIRED: "APPROVAL_REQUIRED";
|
|
171
171
|
}>;
|
|
172
172
|
export type AgentPolicyDecision = z.infer<typeof agentPolicyDecisionSchema>;
|
|
173
173
|
export declare const writePreviewSchema: z.ZodObject<{
|
|
@@ -191,8 +191,8 @@ export declare const writeDryRunResultSchema: z.ZodObject<{
|
|
|
191
191
|
dryRun: z.ZodLiteral<true>;
|
|
192
192
|
decision: z.ZodEnum<{
|
|
193
193
|
DENIED: "DENIED";
|
|
194
|
-
APPROVAL_REQUIRED: "APPROVAL_REQUIRED";
|
|
195
194
|
ALLOW: "ALLOW";
|
|
195
|
+
APPROVAL_REQUIRED: "APPROVAL_REQUIRED";
|
|
196
196
|
}>;
|
|
197
197
|
reason: z.ZodNullable<z.ZodString>;
|
|
198
198
|
preview: z.ZodObject<{
|
|
@@ -214,9 +214,9 @@ export declare const writeDryRunResultSchema: z.ZodObject<{
|
|
|
214
214
|
export type WriteDryRunResult = z.infer<typeof writeDryRunResultSchema>;
|
|
215
215
|
export declare const approvalStatusSchema: z.ZodEnum<{
|
|
216
216
|
UNKNOWN: "UNKNOWN";
|
|
217
|
-
PENDING: "PENDING";
|
|
218
|
-
FAILED: "FAILED";
|
|
219
217
|
SUCCEEDED: "SUCCEEDED";
|
|
218
|
+
FAILED: "FAILED";
|
|
219
|
+
PENDING: "PENDING";
|
|
220
220
|
EXECUTING: "EXECUTING";
|
|
221
221
|
REJECTED: "REJECTED";
|
|
222
222
|
EXPIRED: "EXPIRED";
|
|
@@ -226,9 +226,9 @@ export declare const approvalRequestSchema: z.ZodObject<{
|
|
|
226
226
|
approvalId: z.ZodString;
|
|
227
227
|
status: z.ZodEnum<{
|
|
228
228
|
UNKNOWN: "UNKNOWN";
|
|
229
|
-
PENDING: "PENDING";
|
|
230
|
-
FAILED: "FAILED";
|
|
231
229
|
SUCCEEDED: "SUCCEEDED";
|
|
230
|
+
FAILED: "FAILED";
|
|
231
|
+
PENDING: "PENDING";
|
|
232
232
|
EXECUTING: "EXECUTING";
|
|
233
233
|
REJECTED: "REJECTED";
|
|
234
234
|
EXPIRED: "EXPIRED";
|
|
@@ -288,9 +288,9 @@ export type ApprovalRequest = z.infer<typeof approvalRequestSchema>;
|
|
|
288
288
|
export declare const approvalListQuerySchema: z.ZodObject<{
|
|
289
289
|
status: z.ZodOptional<z.ZodPipe<z.ZodPipe<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>, z.ZodTransform<string[], string | string[]>>, z.ZodArray<z.ZodEnum<{
|
|
290
290
|
UNKNOWN: "UNKNOWN";
|
|
291
|
-
PENDING: "PENDING";
|
|
292
|
-
FAILED: "FAILED";
|
|
293
291
|
SUCCEEDED: "SUCCEEDED";
|
|
292
|
+
FAILED: "FAILED";
|
|
293
|
+
PENDING: "PENDING";
|
|
294
294
|
EXECUTING: "EXECUTING";
|
|
295
295
|
REJECTED: "REJECTED";
|
|
296
296
|
EXPIRED: "EXPIRED";
|
|
@@ -307,9 +307,9 @@ export declare const approvalPageSchema: z.ZodObject<{
|
|
|
307
307
|
approvalId: z.ZodString;
|
|
308
308
|
status: z.ZodEnum<{
|
|
309
309
|
UNKNOWN: "UNKNOWN";
|
|
310
|
-
PENDING: "PENDING";
|
|
311
|
-
FAILED: "FAILED";
|
|
312
310
|
SUCCEEDED: "SUCCEEDED";
|
|
311
|
+
FAILED: "FAILED";
|
|
312
|
+
PENDING: "PENDING";
|
|
313
313
|
EXECUTING: "EXECUTING";
|
|
314
314
|
REJECTED: "REJECTED";
|
|
315
315
|
EXPIRED: "EXPIRED";
|
|
@@ -1503,6 +1503,241 @@ export declare const approveClaimResultSchema: z.ZodObject<{
|
|
|
1503
1503
|
}, z.core.$strip>;
|
|
1504
1504
|
export type ApproveClaimResult = z.infer<typeof approveClaimResultSchema>;
|
|
1505
1505
|
//#endregion
|
|
1506
|
+
//#region src/schemas/collection.d.ts
|
|
1507
|
+
/**
|
|
1508
|
+
* 컬렉션 (이슈 #83) — 상품을 어디에 보여 줄지 정하는 묶음이다. 카테고리는 상품이 무엇인지를 정하고 상품당 하나지만, 컬렉션은
|
|
1509
|
+
* 다대다다. 이벤트·기획전은 기간이 있는 직접 선택 컬렉션이다. 권한은 카테고리와 같다(`category:r`·`category:rw`).
|
|
1510
|
+
*
|
|
1511
|
+
* 유형은 만들 때 정하고 바꿀 수 없다. 지금은 직접 선택(`MANUAL`)만 만들 수 있다. 조건 자동(`AUTOMATIC`)은 다음 단계에서 열리고,
|
|
1512
|
+
* 응답의 `type`은 값이 늘 수 있어 문자열이다.
|
|
1513
|
+
*/
|
|
1514
|
+
/** 상점당 컬렉션 최대 개수 — 넘으면 409 `COLLECTION_LIMIT_EXCEEDED` */
|
|
1515
|
+
export declare const MAX_COLLECTIONS = 200;
|
|
1516
|
+
/** 직접 선택 컬렉션 하나에 담는 상품 최대 개수 — 넘으면 409 `COLLECTION_PRODUCT_LIMIT_EXCEEDED` */
|
|
1517
|
+
export declare const MAX_COLLECTION_PRODUCTS = 1000;
|
|
1518
|
+
/** 상품 뒤에 붙이기(`POST /v1/collections/{id}/products`) 한 번에 보내는 상품 최대 개수 */
|
|
1519
|
+
export declare const MAX_COLLECTION_PRODUCTS_PER_ADD = 500;
|
|
1520
|
+
/** 제목 최대 글자 수 */
|
|
1521
|
+
export declare const MAX_COLLECTION_TITLE = 60;
|
|
1522
|
+
/** 설명 최대 글자 수 */
|
|
1523
|
+
export declare const MAX_COLLECTION_DESCRIPTION = 500;
|
|
1524
|
+
/** 주소(slug) 형식 — 영문 소문자·숫자·하이픈, 첫 글자는 영문 소문자나 숫자, 64자까지 */
|
|
1525
|
+
export declare const COLLECTION_SLUG_PATTERN: RegExp;
|
|
1526
|
+
/** 유형 — `MANUAL`(직접 선택)·`AUTOMATIC`(조건 자동, 아직 만들 수 없다) */
|
|
1527
|
+
export declare const COLLECTION_TYPES: readonly ["MANUAL", "AUTOMATIC"];
|
|
1528
|
+
export type CollectionType = (typeof COLLECTION_TYPES)[number];
|
|
1529
|
+
/**
|
|
1530
|
+
* 상품 정렬 — `MANUAL`은 직접 정한 순서(직접 선택 컬렉션만)다. `BEST_SELLING`(판매량순)은 판매량 집계가 열릴 때 받는다.
|
|
1531
|
+
* 저장 값 전체 목록이고, 쓰기에서 받는 값은 `collectionProductSortRequestSchema`다.
|
|
1532
|
+
*/
|
|
1533
|
+
export declare const COLLECTION_PRODUCT_SORTS: readonly ["MANUAL", "LATEST", "BEST_SELLING", "PRICE_ASC", "PRICE_DESC", "REVIEW_COUNT", "RATING_DESC", "RECOMMEND"];
|
|
1534
|
+
export type CollectionProductSort = (typeof COLLECTION_PRODUCT_SORTS)[number];
|
|
1535
|
+
export declare const collectionProductSortRequestSchema: z.ZodEnum<{
|
|
1536
|
+
PRICE_ASC: "PRICE_ASC";
|
|
1537
|
+
PRICE_DESC: "PRICE_DESC";
|
|
1538
|
+
MANUAL: "MANUAL";
|
|
1539
|
+
LATEST: "LATEST";
|
|
1540
|
+
REVIEW_COUNT: "REVIEW_COUNT";
|
|
1541
|
+
RATING_DESC: "RATING_DESC";
|
|
1542
|
+
RECOMMEND: "RECOMMEND";
|
|
1543
|
+
}>;
|
|
1544
|
+
/** 노출 상태 — 노출 여부와 기간에서 나온 값이다. 숨김이 기간보다 앞선다 */
|
|
1545
|
+
export declare const collectionStateSchema: z.ZodEnum<{
|
|
1546
|
+
ACTIVE: "ACTIVE";
|
|
1547
|
+
ENDED: "ENDED";
|
|
1548
|
+
SCHEDULED: "SCHEDULED";
|
|
1549
|
+
HIDDEN: "HIDDEN";
|
|
1550
|
+
}>;
|
|
1551
|
+
export type CollectionState = z.infer<typeof collectionStateSchema>;
|
|
1552
|
+
/** 노출 상태 판정 — 숨김 → 시작 전(예약) → 종료 → 노출 중. `now`는 판정 시각이다 */
|
|
1553
|
+
export declare function collectionStateOf(collection: {
|
|
1554
|
+
visible: boolean;
|
|
1555
|
+
startsAt: string | null;
|
|
1556
|
+
endsAt: string | null;
|
|
1557
|
+
}, now: Date): CollectionState;
|
|
1558
|
+
export declare const collectionSchema: z.ZodObject<{
|
|
1559
|
+
collectionId: z.ZodString;
|
|
1560
|
+
type: z.ZodString;
|
|
1561
|
+
title: z.ZodString;
|
|
1562
|
+
slug: z.ZodString;
|
|
1563
|
+
description: z.ZodString;
|
|
1564
|
+
imageUrl: z.ZodNullable<z.ZodString>;
|
|
1565
|
+
productSort: z.ZodString;
|
|
1566
|
+
visible: z.ZodBoolean;
|
|
1567
|
+
startsAt: z.ZodNullable<z.ZodString>;
|
|
1568
|
+
endsAt: z.ZodNullable<z.ZodString>;
|
|
1569
|
+
sortOrder: z.ZodNumber;
|
|
1570
|
+
metaTitle: z.ZodNullable<z.ZodString>;
|
|
1571
|
+
metaDescription: z.ZodNullable<z.ZodString>;
|
|
1572
|
+
state: z.ZodEnum<{
|
|
1573
|
+
ACTIVE: "ACTIVE";
|
|
1574
|
+
ENDED: "ENDED";
|
|
1575
|
+
SCHEDULED: "SCHEDULED";
|
|
1576
|
+
HIDDEN: "HIDDEN";
|
|
1577
|
+
}>;
|
|
1578
|
+
productCount: z.ZodNumber;
|
|
1579
|
+
revision: z.ZodNumber;
|
|
1580
|
+
createdAt: z.ZodString;
|
|
1581
|
+
updatedAt: z.ZodString;
|
|
1582
|
+
}, z.core.$strip>;
|
|
1583
|
+
export type Collection = z.infer<typeof collectionSchema>;
|
|
1584
|
+
/**
|
|
1585
|
+
* `POST /v1/collections` — 직접 선택 컬렉션을 만든다. `slug`를 생략하면 `c-{id 뒤 8자}`로 만든다.
|
|
1586
|
+
* `productIds`는 처음 담을 상품과 순서다.
|
|
1587
|
+
*/
|
|
1588
|
+
export declare const collectionCreateRequestSchema: z.ZodObject<{
|
|
1589
|
+
title: z.ZodString;
|
|
1590
|
+
slug: z.ZodOptional<z.ZodString>;
|
|
1591
|
+
type: z.ZodDefault<z.ZodEnum<{
|
|
1592
|
+
MANUAL: "MANUAL";
|
|
1593
|
+
}>>;
|
|
1594
|
+
description: z.ZodDefault<z.ZodString>;
|
|
1595
|
+
imageUrl: z.ZodOptional<z.ZodNullable<z.ZodURL>>;
|
|
1596
|
+
productSort: z.ZodDefault<z.ZodEnum<{
|
|
1597
|
+
PRICE_ASC: "PRICE_ASC";
|
|
1598
|
+
PRICE_DESC: "PRICE_DESC";
|
|
1599
|
+
MANUAL: "MANUAL";
|
|
1600
|
+
LATEST: "LATEST";
|
|
1601
|
+
REVIEW_COUNT: "REVIEW_COUNT";
|
|
1602
|
+
RATING_DESC: "RATING_DESC";
|
|
1603
|
+
RECOMMEND: "RECOMMEND";
|
|
1604
|
+
}>>;
|
|
1605
|
+
visible: z.ZodDefault<z.ZodBoolean>;
|
|
1606
|
+
startsAt: z.ZodOptional<z.ZodNullable<z.ZodISODateTime>>;
|
|
1607
|
+
endsAt: z.ZodOptional<z.ZodNullable<z.ZodISODateTime>>;
|
|
1608
|
+
sortOrder: z.ZodOptional<z.ZodNumber>;
|
|
1609
|
+
metaTitle: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
1610
|
+
metaDescription: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
1611
|
+
productIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
1612
|
+
}, z.core.$strip>;
|
|
1613
|
+
export type CollectionCreateRequest = z.infer<typeof collectionCreateRequestSchema>;
|
|
1614
|
+
export type CollectionCreateRequestInput = z.input<typeof collectionCreateRequestSchema>;
|
|
1615
|
+
/**
|
|
1616
|
+
* `PATCH /v1/collections/{collectionId}` — 준 항목만 바뀐다. `type`을 주면 400 `COLLECTION_TYPE_IMMUTABLE`이다.
|
|
1617
|
+
* `revision`을 주면 그 번호일 때만 바뀌고, 그 사이 다른 수정이 있었으면 409 `COLLECTION_CHANGED`다.
|
|
1618
|
+
*/
|
|
1619
|
+
export declare const collectionPatchRequestSchema: z.ZodObject<{
|
|
1620
|
+
title: z.ZodOptional<z.ZodString>;
|
|
1621
|
+
slug: z.ZodOptional<z.ZodString>;
|
|
1622
|
+
type: z.ZodOptional<z.ZodString>;
|
|
1623
|
+
description: z.ZodOptional<z.ZodString>;
|
|
1624
|
+
imageUrl: z.ZodOptional<z.ZodNullable<z.ZodURL>>;
|
|
1625
|
+
productSort: z.ZodOptional<z.ZodEnum<{
|
|
1626
|
+
PRICE_ASC: "PRICE_ASC";
|
|
1627
|
+
PRICE_DESC: "PRICE_DESC";
|
|
1628
|
+
MANUAL: "MANUAL";
|
|
1629
|
+
LATEST: "LATEST";
|
|
1630
|
+
REVIEW_COUNT: "REVIEW_COUNT";
|
|
1631
|
+
RATING_DESC: "RATING_DESC";
|
|
1632
|
+
RECOMMEND: "RECOMMEND";
|
|
1633
|
+
}>>;
|
|
1634
|
+
visible: z.ZodOptional<z.ZodBoolean>;
|
|
1635
|
+
startsAt: z.ZodOptional<z.ZodNullable<z.ZodISODateTime>>;
|
|
1636
|
+
endsAt: z.ZodOptional<z.ZodNullable<z.ZodISODateTime>>;
|
|
1637
|
+
sortOrder: z.ZodOptional<z.ZodNumber>;
|
|
1638
|
+
metaTitle: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
1639
|
+
metaDescription: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
1640
|
+
revision: z.ZodOptional<z.ZodNumber>;
|
|
1641
|
+
}, z.core.$strip>;
|
|
1642
|
+
export type CollectionPatchRequest = z.infer<typeof collectionPatchRequestSchema>;
|
|
1643
|
+
/** `PUT /v1/collections/{collectionId}/products` — 담긴 상품을 통째로 바꾼다(순서 포함) */
|
|
1644
|
+
export declare const collectionProductsReplaceRequestSchema: z.ZodObject<{
|
|
1645
|
+
productIds: z.ZodArray<z.ZodString>;
|
|
1646
|
+
revision: z.ZodOptional<z.ZodNumber>;
|
|
1647
|
+
}, z.core.$strip>;
|
|
1648
|
+
export type CollectionProductsReplaceRequest = z.infer<typeof collectionProductsReplaceRequestSchema>;
|
|
1649
|
+
/** `POST /v1/collections/{collectionId}/products` — 뒤에 붙인다. 이미 담긴 상품은 그 자리에 둔다 */
|
|
1650
|
+
export declare const collectionProductsAddRequestSchema: z.ZodObject<{
|
|
1651
|
+
productIds: z.ZodArray<z.ZodString>;
|
|
1652
|
+
}, z.core.$strip>;
|
|
1653
|
+
export type CollectionProductsAddRequest = z.infer<typeof collectionProductsAddRequestSchema>;
|
|
1654
|
+
/** 컬렉션에 담긴 상품 한 줄 */
|
|
1655
|
+
export declare const collectionProductSchema: z.ZodObject<{
|
|
1656
|
+
productId: z.ZodString;
|
|
1657
|
+
name: z.ZodString;
|
|
1658
|
+
thumbnailUrl: z.ZodNullable<z.ZodString>;
|
|
1659
|
+
status: z.ZodString;
|
|
1660
|
+
salePrice: z.ZodNumber;
|
|
1661
|
+
position: z.ZodNumber;
|
|
1662
|
+
addedAt: z.ZodString;
|
|
1663
|
+
}, z.core.$strip>;
|
|
1664
|
+
export type CollectionProduct = z.infer<typeof collectionProductSchema>;
|
|
1665
|
+
export declare const collectionStateCountsSchema: z.ZodObject<{
|
|
1666
|
+
ALL: z.ZodNumber;
|
|
1667
|
+
ACTIVE: z.ZodNumber;
|
|
1668
|
+
SCHEDULED: z.ZodNumber;
|
|
1669
|
+
ENDED: z.ZodNumber;
|
|
1670
|
+
HIDDEN: z.ZodNumber;
|
|
1671
|
+
}, z.core.$strip>;
|
|
1672
|
+
/** 목록 응답 — 페이지 + 상태별 건수(`q`·`type`·`productId`를 적용하고 `state`는 적용하기 전) */
|
|
1673
|
+
export declare const collectionPageSchema: z.ZodObject<{
|
|
1674
|
+
page: z.ZodNumber;
|
|
1675
|
+
size: z.ZodNumber;
|
|
1676
|
+
totalElements: z.ZodNumber;
|
|
1677
|
+
totalPages: z.ZodNumber;
|
|
1678
|
+
contents: z.ZodArray<z.ZodObject<{
|
|
1679
|
+
collectionId: z.ZodString;
|
|
1680
|
+
type: z.ZodString;
|
|
1681
|
+
title: z.ZodString;
|
|
1682
|
+
slug: z.ZodString;
|
|
1683
|
+
description: z.ZodString;
|
|
1684
|
+
imageUrl: z.ZodNullable<z.ZodString>;
|
|
1685
|
+
productSort: z.ZodString;
|
|
1686
|
+
visible: z.ZodBoolean;
|
|
1687
|
+
startsAt: z.ZodNullable<z.ZodString>;
|
|
1688
|
+
endsAt: z.ZodNullable<z.ZodString>;
|
|
1689
|
+
sortOrder: z.ZodNumber;
|
|
1690
|
+
metaTitle: z.ZodNullable<z.ZodString>;
|
|
1691
|
+
metaDescription: z.ZodNullable<z.ZodString>;
|
|
1692
|
+
state: z.ZodEnum<{
|
|
1693
|
+
ACTIVE: "ACTIVE";
|
|
1694
|
+
ENDED: "ENDED";
|
|
1695
|
+
SCHEDULED: "SCHEDULED";
|
|
1696
|
+
HIDDEN: "HIDDEN";
|
|
1697
|
+
}>;
|
|
1698
|
+
productCount: z.ZodNumber;
|
|
1699
|
+
revision: z.ZodNumber;
|
|
1700
|
+
createdAt: z.ZodString;
|
|
1701
|
+
updatedAt: z.ZodString;
|
|
1702
|
+
}, z.core.$strip>>;
|
|
1703
|
+
stateCounts: z.ZodObject<{
|
|
1704
|
+
ALL: z.ZodNumber;
|
|
1705
|
+
ACTIVE: z.ZodNumber;
|
|
1706
|
+
SCHEDULED: z.ZodNumber;
|
|
1707
|
+
ENDED: z.ZodNumber;
|
|
1708
|
+
HIDDEN: z.ZodNumber;
|
|
1709
|
+
}, z.core.$strip>;
|
|
1710
|
+
}, z.core.$strip>;
|
|
1711
|
+
export type CollectionPage = z.infer<typeof collectionPageSchema>;
|
|
1712
|
+
export interface CollectionListParams extends PageParams {
|
|
1713
|
+
q?: string;
|
|
1714
|
+
type?: CollectionType;
|
|
1715
|
+
state?: CollectionState;
|
|
1716
|
+
productId?: string;
|
|
1717
|
+
}
|
|
1718
|
+
/** `GET /v1/collections` 쿼리 — OpenAPI 문서용 형태(값은 쿼리 문자열) */
|
|
1719
|
+
export declare const collectionListQuerySchema: z.ZodObject<{
|
|
1720
|
+
page: z.ZodOptional<z.ZodString>;
|
|
1721
|
+
size: z.ZodOptional<z.ZodString>;
|
|
1722
|
+
q: z.ZodOptional<z.ZodString>;
|
|
1723
|
+
type: z.ZodOptional<z.ZodEnum<{
|
|
1724
|
+
MANUAL: "MANUAL";
|
|
1725
|
+
AUTOMATIC: "AUTOMATIC";
|
|
1726
|
+
}>>;
|
|
1727
|
+
state: z.ZodOptional<z.ZodEnum<{
|
|
1728
|
+
ACTIVE: "ACTIVE";
|
|
1729
|
+
ENDED: "ENDED";
|
|
1730
|
+
SCHEDULED: "SCHEDULED";
|
|
1731
|
+
HIDDEN: "HIDDEN";
|
|
1732
|
+
}>>;
|
|
1733
|
+
productId: z.ZodOptional<z.ZodString>;
|
|
1734
|
+
}, z.core.$strip>;
|
|
1735
|
+
/** `GET /v1/collections/{collectionId}/products` 쿼리 */
|
|
1736
|
+
export declare const collectionProductListQuerySchema: z.ZodObject<{
|
|
1737
|
+
page: z.ZodOptional<z.ZodString>;
|
|
1738
|
+
size: z.ZodOptional<z.ZodString>;
|
|
1739
|
+
}, z.core.$strip>;
|
|
1740
|
+
//#endregion
|
|
1506
1741
|
//#region src/schemas/coupon.d.ts
|
|
1507
1742
|
/**
|
|
1508
1743
|
* 쿠폰 관리 API 계약 (이슈 #47) — `/v1/coupons/**`, 스코프 `promotion:r|rw`.
|
|
@@ -2270,8 +2505,8 @@ export declare const customerInquiryListQuerySchema: z.ZodObject<{
|
|
|
2270
2505
|
}, z.core.$strip>;
|
|
2271
2506
|
export declare const settlementStatusSchema: z.ZodEnum<{
|
|
2272
2507
|
PAID: "PAID";
|
|
2273
|
-
HELD: "HELD";
|
|
2274
2508
|
SCHEDULED: "SCHEDULED";
|
|
2509
|
+
HELD: "HELD";
|
|
2275
2510
|
}>;
|
|
2276
2511
|
export type SettlementStatus = z.infer<typeof settlementStatusSchema>;
|
|
2277
2512
|
export declare const settlementSummarySchema: z.ZodObject<{
|
|
@@ -2280,8 +2515,8 @@ export declare const settlementSummarySchema: z.ZodObject<{
|
|
|
2280
2515
|
payoutDate: z.ZodNullable<z.ZodString>;
|
|
2281
2516
|
status: z.ZodEnum<{
|
|
2282
2517
|
PAID: "PAID";
|
|
2283
|
-
HELD: "HELD";
|
|
2284
2518
|
SCHEDULED: "SCHEDULED";
|
|
2519
|
+
HELD: "HELD";
|
|
2285
2520
|
}>;
|
|
2286
2521
|
totalPaymentAmount: z.ZodNumber;
|
|
2287
2522
|
totalCommission: z.ZodNumber;
|
|
@@ -2315,8 +2550,8 @@ export declare const settlementWithDetailsSchema: z.ZodObject<{
|
|
|
2315
2550
|
payoutDate: z.ZodNullable<z.ZodString>;
|
|
2316
2551
|
status: z.ZodEnum<{
|
|
2317
2552
|
PAID: "PAID";
|
|
2318
|
-
HELD: "HELD";
|
|
2319
2553
|
SCHEDULED: "SCHEDULED";
|
|
2554
|
+
HELD: "HELD";
|
|
2320
2555
|
}>;
|
|
2321
2556
|
totalPaymentAmount: z.ZodNumber;
|
|
2322
2557
|
totalCommission: z.ZodNumber;
|
|
@@ -2350,8 +2585,8 @@ export declare const settlementListQuerySchema: z.ZodObject<{
|
|
|
2350
2585
|
to: z.ZodOptional<z.ZodString>;
|
|
2351
2586
|
status: z.ZodOptional<z.ZodEnum<{
|
|
2352
2587
|
PAID: "PAID";
|
|
2353
|
-
HELD: "HELD";
|
|
2354
2588
|
SCHEDULED: "SCHEDULED";
|
|
2589
|
+
HELD: "HELD";
|
|
2355
2590
|
}>>;
|
|
2356
2591
|
}, z.core.$strip>;
|
|
2357
2592
|
/** `GET /v1/settlements/{settlementId}` 쿼리 — `size`는 돌려줄 상세 내역 건수다(`page`는 무시) */
|
|
@@ -2383,8 +2618,8 @@ export declare const eventTypeSchema: z.ZodEnum<{
|
|
|
2383
2618
|
}>;
|
|
2384
2619
|
export type EventType = z.infer<typeof eventTypeSchema>;
|
|
2385
2620
|
export declare const webhookStatusSchema: z.ZodEnum<{
|
|
2386
|
-
SUSPENDED: "SUSPENDED";
|
|
2387
2621
|
ACTIVE: "ACTIVE";
|
|
2622
|
+
SUSPENDED: "SUSPENDED";
|
|
2388
2623
|
}>;
|
|
2389
2624
|
export type WebhookStatus = z.infer<typeof webhookStatusSchema>;
|
|
2390
2625
|
export declare const webhookSchema: z.ZodObject<{
|
|
@@ -2408,8 +2643,8 @@ export declare const webhookSchema: z.ZodObject<{
|
|
|
2408
2643
|
"PRODUCT.OUT_OF_STOCK": "PRODUCT.OUT_OF_STOCK";
|
|
2409
2644
|
}>>;
|
|
2410
2645
|
status: z.ZodEnum<{
|
|
2411
|
-
SUSPENDED: "SUSPENDED";
|
|
2412
2646
|
ACTIVE: "ACTIVE";
|
|
2647
|
+
SUSPENDED: "SUSPENDED";
|
|
2413
2648
|
}>;
|
|
2414
2649
|
secretPrefix: z.ZodString;
|
|
2415
2650
|
suspendedAt: z.ZodNullable<z.ZodString>;
|
|
@@ -2438,8 +2673,8 @@ export declare const webhookCreatedSchema: z.ZodObject<{
|
|
|
2438
2673
|
"PRODUCT.OUT_OF_STOCK": "PRODUCT.OUT_OF_STOCK";
|
|
2439
2674
|
}>>;
|
|
2440
2675
|
status: z.ZodEnum<{
|
|
2441
|
-
SUSPENDED: "SUSPENDED";
|
|
2442
2676
|
ACTIVE: "ACTIVE";
|
|
2677
|
+
SUSPENDED: "SUSPENDED";
|
|
2443
2678
|
}>;
|
|
2444
2679
|
secretPrefix: z.ZodString;
|
|
2445
2680
|
suspendedAt: z.ZodNullable<z.ZodString>;
|
|
@@ -2454,10 +2689,10 @@ export declare const webhookSecretRotatedSchema: z.ZodObject<{
|
|
|
2454
2689
|
}, z.core.$strip>;
|
|
2455
2690
|
export type WebhookSecretRotated = z.infer<typeof webhookSecretRotatedSchema>;
|
|
2456
2691
|
export declare const webhookDeliveryStatusSchema: z.ZodEnum<{
|
|
2692
|
+
FAILED: "FAILED";
|
|
2457
2693
|
PENDING: "PENDING";
|
|
2458
2694
|
PENDING_RETRY: "PENDING_RETRY";
|
|
2459
2695
|
SUCCESS: "SUCCESS";
|
|
2460
|
-
FAILED: "FAILED";
|
|
2461
2696
|
}>;
|
|
2462
2697
|
export type WebhookDeliveryStatus = z.infer<typeof webhookDeliveryStatusSchema>;
|
|
2463
2698
|
export declare const webhookDeliveryErrorCodeSchema: z.ZodEnum<{
|
|
@@ -2519,10 +2754,10 @@ export declare const webhookDeliverySchema: z.ZodObject<{
|
|
|
2519
2754
|
}>;
|
|
2520
2755
|
url: z.ZodString;
|
|
2521
2756
|
status: z.ZodEnum<{
|
|
2757
|
+
FAILED: "FAILED";
|
|
2522
2758
|
PENDING: "PENDING";
|
|
2523
2759
|
PENDING_RETRY: "PENDING_RETRY";
|
|
2524
2760
|
SUCCESS: "SUCCESS";
|
|
2525
|
-
FAILED: "FAILED";
|
|
2526
2761
|
}>;
|
|
2527
2762
|
responseStatusCode: z.ZodNullable<z.ZodNumber>;
|
|
2528
2763
|
responseTimeMs: z.ZodNullable<z.ZodNumber>;
|
|
@@ -2572,10 +2807,10 @@ export declare const webhookDeliveryDetailSchema: z.ZodObject<{
|
|
|
2572
2807
|
}>;
|
|
2573
2808
|
url: z.ZodString;
|
|
2574
2809
|
status: z.ZodEnum<{
|
|
2810
|
+
FAILED: "FAILED";
|
|
2575
2811
|
PENDING: "PENDING";
|
|
2576
2812
|
PENDING_RETRY: "PENDING_RETRY";
|
|
2577
2813
|
SUCCESS: "SUCCESS";
|
|
2578
|
-
FAILED: "FAILED";
|
|
2579
2814
|
}>;
|
|
2580
2815
|
responseStatusCode: z.ZodNullable<z.ZodNumber>;
|
|
2581
2816
|
responseTimeMs: z.ZodNullable<z.ZodNumber>;
|
|
@@ -2610,10 +2845,10 @@ export type WebhookDeliveryDetail = z.infer<typeof webhookDeliveryDetailSchema>;
|
|
|
2610
2845
|
/** 전송 기록 조회 쿼리 — `GET /webhooks/{id}/deliveries` */
|
|
2611
2846
|
export declare const webhookDeliveryListQuerySchema: z.ZodObject<{
|
|
2612
2847
|
status: z.ZodOptional<z.ZodEnum<{
|
|
2848
|
+
FAILED: "FAILED";
|
|
2613
2849
|
PENDING: "PENDING";
|
|
2614
2850
|
PENDING_RETRY: "PENDING_RETRY";
|
|
2615
2851
|
SUCCESS: "SUCCESS";
|
|
2616
|
-
FAILED: "FAILED";
|
|
2617
2852
|
}>>;
|
|
2618
2853
|
eventType: z.ZodOptional<z.ZodEnum<{
|
|
2619
2854
|
"ORDER.PAID": "ORDER.PAID";
|
|
@@ -3650,8 +3885,8 @@ export declare const pgEnvironmentSchema: z.ZodEnum<{
|
|
|
3650
3885
|
}>;
|
|
3651
3886
|
export type PgEnvironment = z.infer<typeof pgEnvironmentSchema>;
|
|
3652
3887
|
export declare const pgVerificationResultSchema: z.ZodEnum<{
|
|
3653
|
-
SUCCESS: "SUCCESS";
|
|
3654
3888
|
FAILED: "FAILED";
|
|
3889
|
+
SUCCESS: "SUCCESS";
|
|
3655
3890
|
}>;
|
|
3656
3891
|
export type PgVerificationResult = z.infer<typeof pgVerificationResultSchema>;
|
|
3657
3892
|
/**
|
|
@@ -3800,8 +4035,8 @@ export declare const paymentCredentialSetSchema: z.ZodObject<{
|
|
|
3800
4035
|
}, z.core.$strip>>;
|
|
3801
4036
|
lastVerification: z.ZodNullable<z.ZodObject<{
|
|
3802
4037
|
result: z.ZodEnum<{
|
|
3803
|
-
SUCCESS: "SUCCESS";
|
|
3804
4038
|
FAILED: "FAILED";
|
|
4039
|
+
SUCCESS: "SUCCESS";
|
|
3805
4040
|
}>;
|
|
3806
4041
|
message: z.ZodNullable<z.ZodString>;
|
|
3807
4042
|
checkedAt: z.ZodString;
|
|
@@ -3902,8 +4137,8 @@ export declare const paymentProviderSchema: z.ZodObject<{
|
|
|
3902
4137
|
}, z.core.$strip>>;
|
|
3903
4138
|
lastVerification: z.ZodNullable<z.ZodObject<{
|
|
3904
4139
|
result: z.ZodEnum<{
|
|
3905
|
-
SUCCESS: "SUCCESS";
|
|
3906
4140
|
FAILED: "FAILED";
|
|
4141
|
+
SUCCESS: "SUCCESS";
|
|
3907
4142
|
}>;
|
|
3908
4143
|
message: z.ZodNullable<z.ZodString>;
|
|
3909
4144
|
checkedAt: z.ZodString;
|
|
@@ -3939,8 +4174,8 @@ export declare const paymentProviderSchema: z.ZodObject<{
|
|
|
3939
4174
|
}, z.core.$strip>>;
|
|
3940
4175
|
lastVerification: z.ZodNullable<z.ZodObject<{
|
|
3941
4176
|
result: z.ZodEnum<{
|
|
3942
|
-
SUCCESS: "SUCCESS";
|
|
3943
4177
|
FAILED: "FAILED";
|
|
4178
|
+
SUCCESS: "SUCCESS";
|
|
3944
4179
|
}>;
|
|
3945
4180
|
message: z.ZodNullable<z.ZodString>;
|
|
3946
4181
|
checkedAt: z.ZodString;
|
|
@@ -3975,8 +4210,8 @@ export declare const paymentProviderSchema: z.ZodObject<{
|
|
|
3975
4210
|
}, z.core.$strip>>;
|
|
3976
4211
|
lastVerification: z.ZodNullable<z.ZodObject<{
|
|
3977
4212
|
result: z.ZodEnum<{
|
|
3978
|
-
SUCCESS: "SUCCESS";
|
|
3979
4213
|
FAILED: "FAILED";
|
|
4214
|
+
SUCCESS: "SUCCESS";
|
|
3980
4215
|
}>;
|
|
3981
4216
|
message: z.ZodNullable<z.ZodString>;
|
|
3982
4217
|
checkedAt: z.ZodString;
|
|
@@ -4066,8 +4301,8 @@ export declare const paymentSettingsSchema: z.ZodObject<{
|
|
|
4066
4301
|
}, z.core.$strip>>;
|
|
4067
4302
|
lastVerification: z.ZodNullable<z.ZodObject<{
|
|
4068
4303
|
result: z.ZodEnum<{
|
|
4069
|
-
SUCCESS: "SUCCESS";
|
|
4070
4304
|
FAILED: "FAILED";
|
|
4305
|
+
SUCCESS: "SUCCESS";
|
|
4071
4306
|
}>;
|
|
4072
4307
|
message: z.ZodNullable<z.ZodString>;
|
|
4073
4308
|
checkedAt: z.ZodString;
|
|
@@ -4103,8 +4338,8 @@ export declare const paymentSettingsSchema: z.ZodObject<{
|
|
|
4103
4338
|
}, z.core.$strip>>;
|
|
4104
4339
|
lastVerification: z.ZodNullable<z.ZodObject<{
|
|
4105
4340
|
result: z.ZodEnum<{
|
|
4106
|
-
SUCCESS: "SUCCESS";
|
|
4107
4341
|
FAILED: "FAILED";
|
|
4342
|
+
SUCCESS: "SUCCESS";
|
|
4108
4343
|
}>;
|
|
4109
4344
|
message: z.ZodNullable<z.ZodString>;
|
|
4110
4345
|
checkedAt: z.ZodString;
|
|
@@ -4139,8 +4374,8 @@ export declare const paymentSettingsSchema: z.ZodObject<{
|
|
|
4139
4374
|
}, z.core.$strip>>;
|
|
4140
4375
|
lastVerification: z.ZodNullable<z.ZodObject<{
|
|
4141
4376
|
result: z.ZodEnum<{
|
|
4142
|
-
SUCCESS: "SUCCESS";
|
|
4143
4377
|
FAILED: "FAILED";
|
|
4378
|
+
SUCCESS: "SUCCESS";
|
|
4144
4379
|
}>;
|
|
4145
4380
|
message: z.ZodNullable<z.ZodString>;
|
|
4146
4381
|
checkedAt: z.ZodString;
|
|
@@ -4196,8 +4431,8 @@ export declare const paymentProviderVerificationSchema: z.ZodObject<{
|
|
|
4196
4431
|
LIVE: "LIVE";
|
|
4197
4432
|
}>;
|
|
4198
4433
|
result: z.ZodEnum<{
|
|
4199
|
-
SUCCESS: "SUCCESS";
|
|
4200
4434
|
FAILED: "FAILED";
|
|
4435
|
+
SUCCESS: "SUCCESS";
|
|
4201
4436
|
}>;
|
|
4202
4437
|
message: z.ZodNullable<z.ZodString>;
|
|
4203
4438
|
checkedAt: z.ZodString;
|
|
@@ -4327,8 +4562,8 @@ export type SalesReport = z.infer<typeof salesReportSchema>;
|
|
|
4327
4562
|
* - `FAILED`: 승인되지 않고 끝났다(거절·준비 장애·구매자 취소·만료)
|
|
4328
4563
|
*/
|
|
4329
4564
|
export declare const paymentRecordStatusSchema: z.ZodEnum<{
|
|
4330
|
-
PENDING: "PENDING";
|
|
4331
4565
|
FAILED: "FAILED";
|
|
4566
|
+
PENDING: "PENDING";
|
|
4332
4567
|
APPROVED: "APPROVED";
|
|
4333
4568
|
PARTIALLY_REFUNDED: "PARTIALLY_REFUNDED";
|
|
4334
4569
|
REFUNDED: "REFUNDED";
|
|
@@ -4375,8 +4610,8 @@ export declare const paymentRecordSchema: z.ZodObject<{
|
|
|
4375
4610
|
orderName: z.ZodString;
|
|
4376
4611
|
customerName: z.ZodString;
|
|
4377
4612
|
status: z.ZodEnum<{
|
|
4378
|
-
PENDING: "PENDING";
|
|
4379
4613
|
FAILED: "FAILED";
|
|
4614
|
+
PENDING: "PENDING";
|
|
4380
4615
|
APPROVED: "APPROVED";
|
|
4381
4616
|
PARTIALLY_REFUNDED: "PARTIALLY_REFUNDED";
|
|
4382
4617
|
REFUNDED: "REFUNDED";
|
|
@@ -4421,8 +4656,8 @@ export declare const paymentRecordPageSchema: z.ZodObject<{
|
|
|
4421
4656
|
orderName: z.ZodString;
|
|
4422
4657
|
customerName: z.ZodString;
|
|
4423
4658
|
status: z.ZodEnum<{
|
|
4424
|
-
PENDING: "PENDING";
|
|
4425
4659
|
FAILED: "FAILED";
|
|
4660
|
+
PENDING: "PENDING";
|
|
4426
4661
|
APPROVED: "APPROVED";
|
|
4427
4662
|
PARTIALLY_REFUNDED: "PARTIALLY_REFUNDED";
|
|
4428
4663
|
REFUNDED: "REFUNDED";
|
|
@@ -4510,8 +4745,8 @@ export declare const paymentRecordDetailSchema: z.ZodObject<{
|
|
|
4510
4745
|
orderName: z.ZodString;
|
|
4511
4746
|
customerName: z.ZodString;
|
|
4512
4747
|
status: z.ZodEnum<{
|
|
4513
|
-
PENDING: "PENDING";
|
|
4514
4748
|
FAILED: "FAILED";
|
|
4749
|
+
PENDING: "PENDING";
|
|
4515
4750
|
APPROVED: "APPROVED";
|
|
4516
4751
|
PARTIALLY_REFUNDED: "PARTIALLY_REFUNDED";
|
|
4517
4752
|
REFUNDED: "REFUNDED";
|
|
@@ -4636,22 +4871,261 @@ export interface PaymentListParams extends PageParams {
|
|
|
4636
4871
|
includeTest?: boolean;
|
|
4637
4872
|
}
|
|
4638
4873
|
//#endregion
|
|
4874
|
+
//#region src/schemas/points.d.ts
|
|
4875
|
+
/**
|
|
4876
|
+
* 적립금 (이슈 #93) — 상점 정책·원장 유형·순수 계산. 정책 해석은 `resolvePointPolicy`, 리뷰 적립 금액은
|
|
4877
|
+
* `reviewRewardPointOf`, 적립 묶음(lot) 만료 시각은 `pointExpiresAtOf` 한 곳이다. 서버·상점 플랫폼이 같은 함수를 쓴다.
|
|
4878
|
+
*
|
|
4879
|
+
* 정책이 없으면(null) 모든 적립이 꺼져 있다(사용자 결정 2026-10-02). 셀러가 켜야 적립이 시작된다.
|
|
4880
|
+
* 구매 적립 금액은 `pointEarnOf`, 적용 적립률은 `purchaseEarnRateOf`(상품 덮어쓰기 우선)다. 사용 규칙은 다음 단계(P3)에서 가산한다.
|
|
4881
|
+
*/
|
|
4882
|
+
/** 리뷰 적립·회수 금액 상한 — 한 리뷰에 주는 금액 */
|
|
4883
|
+
export declare const POINT_REVIEW_REWARD_MAX = 100000;
|
|
4884
|
+
/** 유효 기간 범위(일) — 「소멸 없음」 선택지는 두지 않는다(사용자 결정 2026-10-02) */
|
|
4885
|
+
export declare const POINT_EXPIRY_DAYS_MIN = 30;
|
|
4886
|
+
export declare const POINT_EXPIRY_DAYS_MAX = 1825;
|
|
4887
|
+
/** 구매 적립률 상한(만분율) — 3000 = 30% */
|
|
4888
|
+
export declare const POINT_EARN_RATE_BP_MAX = 3000;
|
|
4889
|
+
/** 구매 적립률(만분율, 100 = 1%). 상품별 덮어쓰기도 같은 범위다 */
|
|
4890
|
+
export declare const pointEarnRateBpSchema: z.ZodNumber;
|
|
4891
|
+
export declare const reviewRewardPolicySchema: z.ZodObject<{
|
|
4892
|
+
enabled: z.ZodBoolean;
|
|
4893
|
+
textPoint: z.ZodNumber;
|
|
4894
|
+
photoPoint: z.ZodNumber;
|
|
4895
|
+
}, z.core.$strip>;
|
|
4896
|
+
export type ReviewRewardPolicy = z.infer<typeof reviewRewardPolicySchema>;
|
|
4897
|
+
export declare const purchaseEarnPolicySchema: z.ZodObject<{
|
|
4898
|
+
enabled: z.ZodBoolean;
|
|
4899
|
+
rateBp: z.ZodNumber;
|
|
4900
|
+
}, z.core.$strip>;
|
|
4901
|
+
export type PurchaseEarnPolicy = z.infer<typeof purchaseEarnPolicySchema>;
|
|
4902
|
+
/** 저장된 상점 정책(`stores.point_policy`) — 해석은 `resolvePointPolicy` */
|
|
4903
|
+
export declare const pointPolicySchema: z.ZodObject<{
|
|
4904
|
+
reviewReward: z.ZodObject<{
|
|
4905
|
+
enabled: z.ZodBoolean;
|
|
4906
|
+
textPoint: z.ZodNumber;
|
|
4907
|
+
photoPoint: z.ZodNumber;
|
|
4908
|
+
}, z.core.$strip>;
|
|
4909
|
+
purchaseEarn: z.ZodObject<{
|
|
4910
|
+
enabled: z.ZodBoolean;
|
|
4911
|
+
rateBp: z.ZodNumber;
|
|
4912
|
+
}, z.core.$strip>;
|
|
4913
|
+
expiryDays: z.ZodNullable<z.ZodNumber>;
|
|
4914
|
+
}, z.core.$strip>;
|
|
4915
|
+
export type PointPolicy = z.infer<typeof pointPolicySchema>;
|
|
4916
|
+
/** 정책이 없을 때 — 모두 끔 */
|
|
4917
|
+
export declare const POINT_POLICY_DEFAULTS: PointPolicy;
|
|
4918
|
+
/**
|
|
4919
|
+
* 저장된 정책 → 유효 정책. null·형식이 틀린 값은 기본(모두 끔)이다. 키 하나가 틀려도 그 묶음만 기본으로 읽는다
|
|
4920
|
+
* (정책 형식이 바뀌어 옛 행이 남아 있을 때 적립을 잘못 켜지 않게 한다).
|
|
4921
|
+
*/
|
|
4922
|
+
export declare function resolvePointPolicy(stored: unknown): PointPolicy;
|
|
4923
|
+
/** 적립을 하나라도 켰는가 — 켜면 유효 기간이 필수다 */
|
|
4924
|
+
export declare function pointEarningEnabled(policy: PointPolicy): boolean;
|
|
4925
|
+
/**
|
|
4926
|
+
* 주문상품에 적용할 구매 적립률 — 구매 적립이 꺼져 있으면 0, 상품 덮어쓰기(`products.point_earn_rate_bp`)가 있으면 그 값
|
|
4927
|
+
* (0 = 적립 안 함), 없으면 상점 기본이다. 결제 확정 때 주문상품에 스냅샷한다.
|
|
4928
|
+
*/
|
|
4929
|
+
export declare function purchaseEarnRateOf(policy: PointPolicy, productRateBp: number | null): number;
|
|
4930
|
+
/** 구매 적립 금액 — 적립 기준 금액 × 적립률, 1원 미만은 내린다 */
|
|
4931
|
+
export declare function pointEarnOf(input: {
|
|
4932
|
+
paidBase: number;
|
|
4933
|
+
rateBp: number;
|
|
4934
|
+
}): number;
|
|
4935
|
+
/** 리뷰 하나의 적립 금액 — 정책이 꺼져 있으면 0이다. 사진은 추가분이다 */
|
|
4936
|
+
export declare function reviewRewardPointOf(policy: PointPolicy, hasPhoto: boolean): number;
|
|
4937
|
+
/**
|
|
4938
|
+
* 적립 묶음의 만료 시각 — 적립 시각 + `days`일이 속한 한국 시간 날짜의 끝(23:59:59.999 KST). 구매자 안내가 날짜 단위라
|
|
4939
|
+
* 시각을 날짜 끝에 맞춘다. `days`가 null이면 만료 없음(null)이다.
|
|
4940
|
+
*/
|
|
4941
|
+
export declare function pointExpiresAtOf(earnedAt: Date, days: number | null): Date | null;
|
|
4942
|
+
/** 적립 묶음 출처 — 같은 출처 id에는 묶음이 하나뿐이다(DB 부분 유니크) */
|
|
4943
|
+
export declare const POINT_LOT_SOURCES: readonly ["REVIEW", "PURCHASE", "ADJUST", "REFUND_RESTORE", "OPENING"];
|
|
4944
|
+
export type PointLotSource = (typeof POINT_LOT_SOURCES)[number];
|
|
4945
|
+
/** 원장 항목 유형. 지금 쓰는 것은 리뷰 적립·회수이고 나머지는 다음 단계 자리다 */
|
|
4946
|
+
export declare const POINT_ENTRY_TYPES: readonly ["EARN_REVIEW", "REVOKE_REVIEW", "EARN_PURCHASE", "USE_RESERVE", "USE_RELEASE", "REFUND_RESTORE", "EXPIRE", "ADJUST", "OPENING"];
|
|
4947
|
+
export type PointEntryType = (typeof POINT_ENTRY_TYPES)[number];
|
|
4948
|
+
/** 상점 플랫폼 알림 — `REVIEW_REWARD_PAUSED` 리뷰 자동 적립이 멈춤 · `POINTS_AVAILABLE` 적립금 설정을 쓸 수 있음 */
|
|
4949
|
+
export declare const pointPolicyNoticeSchema: z.ZodNullable<z.ZodEnum<{
|
|
4950
|
+
REVIEW_REWARD_PAUSED: "REVIEW_REWARD_PAUSED";
|
|
4951
|
+
POINTS_AVAILABLE: "POINTS_AVAILABLE";
|
|
4952
|
+
}>>;
|
|
4953
|
+
export type PointPolicyNotice = z.infer<typeof pointPolicyNoticeSchema>;
|
|
4954
|
+
/** `GET /v1/store/point-policy` 응답 */
|
|
4955
|
+
export declare const storePointPolicySchema: z.ZodObject<{
|
|
4956
|
+
available: z.ZodBoolean;
|
|
4957
|
+
configured: z.ZodBoolean;
|
|
4958
|
+
reviewReward: z.ZodObject<{
|
|
4959
|
+
enabled: z.ZodBoolean;
|
|
4960
|
+
textPoint: z.ZodNumber;
|
|
4961
|
+
photoPoint: z.ZodNumber;
|
|
4962
|
+
}, z.core.$strip>;
|
|
4963
|
+
purchaseEarn: z.ZodObject<{
|
|
4964
|
+
enabled: z.ZodBoolean;
|
|
4965
|
+
rateBp: z.ZodNumber;
|
|
4966
|
+
}, z.core.$strip>;
|
|
4967
|
+
expiryDays: z.ZodNullable<z.ZodNumber>;
|
|
4968
|
+
notice: z.ZodNullable<z.ZodEnum<{
|
|
4969
|
+
REVIEW_REWARD_PAUSED: "REVIEW_REWARD_PAUSED";
|
|
4970
|
+
POINTS_AVAILABLE: "POINTS_AVAILABLE";
|
|
4971
|
+
}>>;
|
|
4972
|
+
}, z.core.$strip>;
|
|
4973
|
+
export type StorePointPolicy = z.infer<typeof storePointPolicySchema>;
|
|
4974
|
+
/**
|
|
4975
|
+
* `PUT /v1/store/point-policy` 본문 — 준 항목만 바꾼다(생략 = 저장된 값 유지). 리뷰 적립·구매 적립 중 하나라도 켜면 유효 기간이 있어야 한다
|
|
4976
|
+
* (본문이나 저장된 값, 없으면 400 `POINT_EXPIRY_REQUIRED`).
|
|
4977
|
+
*/
|
|
4978
|
+
export declare const updatePointPolicyRequestSchema: z.ZodObject<{
|
|
4979
|
+
reviewReward: z.ZodOptional<z.ZodObject<{
|
|
4980
|
+
enabled: z.ZodBoolean;
|
|
4981
|
+
textPoint: z.ZodNumber;
|
|
4982
|
+
photoPoint: z.ZodNumber;
|
|
4983
|
+
}, z.core.$strip>>;
|
|
4984
|
+
purchaseEarn: z.ZodOptional<z.ZodObject<{
|
|
4985
|
+
enabled: z.ZodBoolean;
|
|
4986
|
+
rateBp: z.ZodNumber;
|
|
4987
|
+
}, z.core.$strip>>;
|
|
4988
|
+
expiryDays: z.ZodOptional<z.ZodNumber>;
|
|
4989
|
+
}, z.core.$strip>;
|
|
4990
|
+
export type UpdatePointPolicyRequest = z.infer<typeof updatePointPolicyRequestSchema>;
|
|
4991
|
+
/** 응답의 원장 유형 — 값이 추가될 수 있어 문자열로 받는다 */
|
|
4992
|
+
export declare const responsePointEntryTypeSchema: z.ZodUnion<readonly [z.ZodEnum<{
|
|
4993
|
+
EARN_REVIEW: "EARN_REVIEW";
|
|
4994
|
+
REVOKE_REVIEW: "REVOKE_REVIEW";
|
|
4995
|
+
EARN_PURCHASE: "EARN_PURCHASE";
|
|
4996
|
+
USE_RESERVE: "USE_RESERVE";
|
|
4997
|
+
USE_RELEASE: "USE_RELEASE";
|
|
4998
|
+
REFUND_RESTORE: "REFUND_RESTORE";
|
|
4999
|
+
EXPIRE: "EXPIRE";
|
|
5000
|
+
ADJUST: "ADJUST";
|
|
5001
|
+
OPENING: "OPENING";
|
|
5002
|
+
}>, z.ZodString]>;
|
|
5003
|
+
/** 원장 항목 — 셀러 조회용(사유·행위자 포함) */
|
|
5004
|
+
export declare const pointEntrySchema: z.ZodObject<{
|
|
5005
|
+
entryId: z.ZodString;
|
|
5006
|
+
memberId: z.ZodString;
|
|
5007
|
+
type: z.ZodUnion<readonly [z.ZodEnum<{
|
|
5008
|
+
EARN_REVIEW: "EARN_REVIEW";
|
|
5009
|
+
REVOKE_REVIEW: "REVOKE_REVIEW";
|
|
5010
|
+
EARN_PURCHASE: "EARN_PURCHASE";
|
|
5011
|
+
USE_RESERVE: "USE_RESERVE";
|
|
5012
|
+
USE_RELEASE: "USE_RELEASE";
|
|
5013
|
+
REFUND_RESTORE: "REFUND_RESTORE";
|
|
5014
|
+
EXPIRE: "EXPIRE";
|
|
5015
|
+
ADJUST: "ADJUST";
|
|
5016
|
+
OPENING: "OPENING";
|
|
5017
|
+
}>, z.ZodString]>;
|
|
5018
|
+
amount: z.ZodNumber;
|
|
5019
|
+
balanceAfter: z.ZodNumber;
|
|
5020
|
+
refType: z.ZodNullable<z.ZodString>;
|
|
5021
|
+
refId: z.ZodNullable<z.ZodString>;
|
|
5022
|
+
memo: z.ZodNullable<z.ZodString>;
|
|
5023
|
+
actor: z.ZodNullable<z.ZodString>;
|
|
5024
|
+
createdAt: z.ZodString;
|
|
5025
|
+
}, z.core.$strip>;
|
|
5026
|
+
export type PointEntry = z.infer<typeof pointEntrySchema>;
|
|
5027
|
+
/** 적립 묶음 요약 — 남은 금액이 있는 묶음 */
|
|
5028
|
+
export declare const pointLotSchema: z.ZodObject<{
|
|
5029
|
+
lotId: z.ZodString;
|
|
5030
|
+
source: z.ZodUnion<readonly [z.ZodEnum<{
|
|
5031
|
+
PURCHASE: "PURCHASE";
|
|
5032
|
+
REFUND_RESTORE: "REFUND_RESTORE";
|
|
5033
|
+
ADJUST: "ADJUST";
|
|
5034
|
+
OPENING: "OPENING";
|
|
5035
|
+
REVIEW: "REVIEW";
|
|
5036
|
+
}>, z.ZodString]>;
|
|
5037
|
+
amount: z.ZodNumber;
|
|
5038
|
+
remaining: z.ZodNumber;
|
|
5039
|
+
expiresAt: z.ZodNullable<z.ZodString>;
|
|
5040
|
+
createdAt: z.ZodString;
|
|
5041
|
+
}, z.core.$strip>;
|
|
5042
|
+
export type PointLot = z.infer<typeof pointLotSchema>;
|
|
5043
|
+
/** `GET /v1/customers/{customerId}/points` */
|
|
5044
|
+
export declare const customerPointsSchema: z.ZodObject<{
|
|
5045
|
+
balance: z.ZodNumber;
|
|
5046
|
+
expiringSoon: z.ZodNumber;
|
|
5047
|
+
lots: z.ZodArray<z.ZodObject<{
|
|
5048
|
+
lotId: z.ZodString;
|
|
5049
|
+
source: z.ZodUnion<readonly [z.ZodEnum<{
|
|
5050
|
+
PURCHASE: "PURCHASE";
|
|
5051
|
+
REFUND_RESTORE: "REFUND_RESTORE";
|
|
5052
|
+
ADJUST: "ADJUST";
|
|
5053
|
+
OPENING: "OPENING";
|
|
5054
|
+
REVIEW: "REVIEW";
|
|
5055
|
+
}>, z.ZodString]>;
|
|
5056
|
+
amount: z.ZodNumber;
|
|
5057
|
+
remaining: z.ZodNumber;
|
|
5058
|
+
expiresAt: z.ZodNullable<z.ZodString>;
|
|
5059
|
+
createdAt: z.ZodString;
|
|
5060
|
+
}, z.core.$strip>>;
|
|
5061
|
+
}, z.core.$strip>;
|
|
5062
|
+
export type CustomerPoints = z.infer<typeof customerPointsSchema>;
|
|
5063
|
+
/** 원장 조회 쿼리 — 상점 전체(`GET /v1/points/history`)는 회원·유형·기간으로 거른다 */
|
|
5064
|
+
export declare const pointHistoryQuerySchema: z.ZodObject<{
|
|
5065
|
+
page: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
|
|
5066
|
+
size: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
|
|
5067
|
+
type: z.ZodOptional<z.ZodString>;
|
|
5068
|
+
memberId: z.ZodOptional<z.ZodString>;
|
|
5069
|
+
from: z.ZodOptional<z.ZodISODateTime>;
|
|
5070
|
+
to: z.ZodOptional<z.ZodISODateTime>;
|
|
5071
|
+
}, z.core.$strip>;
|
|
5072
|
+
export type PointHistoryQuery = z.infer<typeof pointHistoryQuerySchema>;
|
|
5073
|
+
/** 셀러 조정 금액 한도 — 한 번에 천만 원 */
|
|
5074
|
+
export declare const POINT_ADJUSTMENT_MAX = 10000000;
|
|
5075
|
+
/**
|
|
5076
|
+
* `POST /v1/customers/{customerId}/points/adjustments` — 셀러 지급(+)·차감(−). 헤더 `Idempotency-Key`가 필수다.
|
|
5077
|
+
* 지급의 소멸 시각은 `expiresAt`(생략하면 정책 유효 기간, 정책이 없으면 400 `POINT_EXPIRY_REQUIRED`), 차감은 소멸이 이른 적립금부터 뺀다
|
|
5078
|
+
* (잔액보다 많으면 409 `POINT_BALANCE_INSUFFICIENT`).
|
|
5079
|
+
*/
|
|
5080
|
+
export declare const pointAdjustmentRequestSchema: z.ZodObject<{
|
|
5081
|
+
amount: z.ZodNumber;
|
|
5082
|
+
reason: z.ZodString;
|
|
5083
|
+
expiresAt: z.ZodOptional<z.ZodISODateTime>;
|
|
5084
|
+
}, z.core.$strip>;
|
|
5085
|
+
export type PointAdjustmentRequest = z.infer<typeof pointAdjustmentRequestSchema>;
|
|
5086
|
+
export declare const pointAdjustmentResultSchema: z.ZodObject<{
|
|
5087
|
+
entry: z.ZodObject<{
|
|
5088
|
+
entryId: z.ZodString;
|
|
5089
|
+
memberId: z.ZodString;
|
|
5090
|
+
type: z.ZodUnion<readonly [z.ZodEnum<{
|
|
5091
|
+
EARN_REVIEW: "EARN_REVIEW";
|
|
5092
|
+
REVOKE_REVIEW: "REVOKE_REVIEW";
|
|
5093
|
+
EARN_PURCHASE: "EARN_PURCHASE";
|
|
5094
|
+
USE_RESERVE: "USE_RESERVE";
|
|
5095
|
+
USE_RELEASE: "USE_RELEASE";
|
|
5096
|
+
REFUND_RESTORE: "REFUND_RESTORE";
|
|
5097
|
+
EXPIRE: "EXPIRE";
|
|
5098
|
+
ADJUST: "ADJUST";
|
|
5099
|
+
OPENING: "OPENING";
|
|
5100
|
+
}>, z.ZodString]>;
|
|
5101
|
+
amount: z.ZodNumber;
|
|
5102
|
+
balanceAfter: z.ZodNumber;
|
|
5103
|
+
refType: z.ZodNullable<z.ZodString>;
|
|
5104
|
+
refId: z.ZodNullable<z.ZodString>;
|
|
5105
|
+
memo: z.ZodNullable<z.ZodString>;
|
|
5106
|
+
actor: z.ZodNullable<z.ZodString>;
|
|
5107
|
+
createdAt: z.ZodString;
|
|
5108
|
+
}, z.core.$strip>;
|
|
5109
|
+
balance: z.ZodNumber;
|
|
5110
|
+
}, z.core.$strip>;
|
|
5111
|
+
export type PointAdjustmentResult = z.infer<typeof pointAdjustmentResultSchema>;
|
|
5112
|
+
//#endregion
|
|
4639
5113
|
//#region src/schemas/product.d.ts
|
|
4640
5114
|
export declare const productStatusSchema: z.ZodEnum<{
|
|
4641
|
-
SALE: "SALE";
|
|
4642
5115
|
SUSPENDED: "SUSPENDED";
|
|
4643
|
-
OUT_OF_STOCK: "OUT_OF_STOCK";
|
|
4644
5116
|
CLOSED: "CLOSED";
|
|
5117
|
+
SALE: "SALE";
|
|
5118
|
+
OUT_OF_STOCK: "OUT_OF_STOCK";
|
|
4645
5119
|
}>;
|
|
4646
5120
|
export type ProductStatus = z.infer<typeof productStatusSchema>;
|
|
4647
5121
|
export declare const productSummarySchema: z.ZodObject<{
|
|
4648
5122
|
productId: z.ZodString;
|
|
4649
5123
|
name: z.ZodString;
|
|
4650
5124
|
status: z.ZodEnum<{
|
|
4651
|
-
SALE: "SALE";
|
|
4652
5125
|
SUSPENDED: "SUSPENDED";
|
|
4653
|
-
OUT_OF_STOCK: "OUT_OF_STOCK";
|
|
4654
5126
|
CLOSED: "CLOSED";
|
|
5127
|
+
SALE: "SALE";
|
|
5128
|
+
OUT_OF_STOCK: "OUT_OF_STOCK";
|
|
4655
5129
|
}>;
|
|
4656
5130
|
salePrice: z.ZodNumber;
|
|
4657
5131
|
discountedPrice: z.ZodNullable<z.ZodNumber>;
|
|
@@ -4835,10 +5309,10 @@ export declare const productSchema: z.ZodObject<{
|
|
|
4835
5309
|
productId: z.ZodString;
|
|
4836
5310
|
name: z.ZodString;
|
|
4837
5311
|
status: z.ZodEnum<{
|
|
4838
|
-
SALE: "SALE";
|
|
4839
5312
|
SUSPENDED: "SUSPENDED";
|
|
4840
|
-
OUT_OF_STOCK: "OUT_OF_STOCK";
|
|
4841
5313
|
CLOSED: "CLOSED";
|
|
5314
|
+
SALE: "SALE";
|
|
5315
|
+
OUT_OF_STOCK: "OUT_OF_STOCK";
|
|
4842
5316
|
}>;
|
|
4843
5317
|
salePrice: z.ZodNumber;
|
|
4844
5318
|
discountedPrice: z.ZodNullable<z.ZodNumber>;
|
|
@@ -4851,6 +5325,7 @@ export declare const productSchema: z.ZodObject<{
|
|
|
4851
5325
|
description: z.ZodOptional<z.ZodString>;
|
|
4852
5326
|
descriptionJson: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
4853
5327
|
originalPrice: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
5328
|
+
pointEarnRateBp: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
4854
5329
|
images: z.ZodOptional<z.ZodArray<z.ZodURL>>;
|
|
4855
5330
|
attributes: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
4856
5331
|
attributeId: z.ZodString;
|
|
@@ -5197,6 +5672,7 @@ export declare const productCreateRequestSchema: z.ZodObject<{
|
|
|
5197
5672
|
categoryId: z.ZodString;
|
|
5198
5673
|
salePrice: z.ZodNumber;
|
|
5199
5674
|
originalPrice: z.ZodOptional<z.ZodNumber>;
|
|
5675
|
+
pointEarnRateBp: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
5200
5676
|
description: z.ZodOptional<z.ZodString>;
|
|
5201
5677
|
descriptionJson: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
5202
5678
|
images: z.ZodOptional<z.ZodArray<z.ZodURL>>;
|
|
@@ -5282,6 +5758,7 @@ export declare const productReplaceRequestSchema: z.ZodObject<{
|
|
|
5282
5758
|
categoryId: z.ZodString;
|
|
5283
5759
|
salePrice: z.ZodNumber;
|
|
5284
5760
|
originalPrice: z.ZodOptional<z.ZodNumber>;
|
|
5761
|
+
pointEarnRateBp: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
5285
5762
|
description: z.ZodOptional<z.ZodString>;
|
|
5286
5763
|
descriptionJson: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
5287
5764
|
images: z.ZodOptional<z.ZodArray<z.ZodURL>>;
|
|
@@ -5303,10 +5780,10 @@ export declare const productPatchRequestSchema: z.ZodObject<{
|
|
|
5303
5780
|
name: z.ZodOptional<z.ZodString>;
|
|
5304
5781
|
salePrice: z.ZodOptional<z.ZodNumber>;
|
|
5305
5782
|
status: z.ZodOptional<z.ZodEnum<{
|
|
5306
|
-
SALE: "SALE";
|
|
5307
5783
|
SUSPENDED: "SUSPENDED";
|
|
5308
|
-
OUT_OF_STOCK: "OUT_OF_STOCK";
|
|
5309
5784
|
CLOSED: "CLOSED";
|
|
5785
|
+
SALE: "SALE";
|
|
5786
|
+
OUT_OF_STOCK: "OUT_OF_STOCK";
|
|
5310
5787
|
}>>;
|
|
5311
5788
|
images: z.ZodOptional<z.ZodArray<z.ZodURL>>;
|
|
5312
5789
|
fulfillment: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
@@ -5332,14 +5809,15 @@ export declare const productPatchRequestSchema: z.ZodObject<{
|
|
|
5332
5809
|
sellerFaultFreeShipping: z.ZodOptional<z.ZodBoolean>;
|
|
5333
5810
|
conditionalFreeShortfallCharge: z.ZodOptional<z.ZodBoolean>;
|
|
5334
5811
|
}, z.core.$strict>>>;
|
|
5812
|
+
pointEarnRateBp: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
5335
5813
|
}, z.core.$strict>;
|
|
5336
5814
|
export type ProductPatchRequest = z.infer<typeof productPatchRequestSchema>;
|
|
5337
5815
|
export declare const productSortSchema: z.ZodEnum<{
|
|
5338
|
-
"updatedAt.desc": "updatedAt.desc";
|
|
5339
5816
|
"createdAt.desc": "createdAt.desc";
|
|
5340
5817
|
"createdAt.asc": "createdAt.asc";
|
|
5341
5818
|
"salePrice.asc": "salePrice.asc";
|
|
5342
5819
|
"salePrice.desc": "salePrice.desc";
|
|
5820
|
+
"updatedAt.desc": "updatedAt.desc";
|
|
5343
5821
|
}>;
|
|
5344
5822
|
export type ProductSort = z.infer<typeof productSortSchema>;
|
|
5345
5823
|
export interface ProductListParams extends PageParams {
|
|
@@ -5354,20 +5832,20 @@ export declare const productListQuerySchema: z.ZodObject<{
|
|
|
5354
5832
|
page: z.ZodOptional<z.ZodString>;
|
|
5355
5833
|
size: z.ZodOptional<z.ZodString>;
|
|
5356
5834
|
status: z.ZodOptional<z.ZodEnum<{
|
|
5357
|
-
SALE: "SALE";
|
|
5358
5835
|
SUSPENDED: "SUSPENDED";
|
|
5359
|
-
OUT_OF_STOCK: "OUT_OF_STOCK";
|
|
5360
5836
|
CLOSED: "CLOSED";
|
|
5837
|
+
SALE: "SALE";
|
|
5838
|
+
OUT_OF_STOCK: "OUT_OF_STOCK";
|
|
5361
5839
|
}>>;
|
|
5362
5840
|
categoryId: z.ZodOptional<z.ZodString>;
|
|
5363
5841
|
keyword: z.ZodOptional<z.ZodString>;
|
|
5364
5842
|
sellerCode: z.ZodOptional<z.ZodString>;
|
|
5365
5843
|
sort: z.ZodOptional<z.ZodEnum<{
|
|
5366
|
-
"updatedAt.desc": "updatedAt.desc";
|
|
5367
5844
|
"createdAt.desc": "createdAt.desc";
|
|
5368
5845
|
"createdAt.asc": "createdAt.asc";
|
|
5369
5846
|
"salePrice.asc": "salePrice.asc";
|
|
5370
5847
|
"salePrice.desc": "salePrice.desc";
|
|
5848
|
+
"updatedAt.desc": "updatedAt.desc";
|
|
5371
5849
|
}>>;
|
|
5372
5850
|
}, z.core.$strip>;
|
|
5373
5851
|
export declare const discountRequestSchema: z.ZodObject<{
|
|
@@ -5734,9 +6212,9 @@ export declare const storeSchema: z.ZodObject<{
|
|
|
5734
6212
|
storeCode: z.ZodString;
|
|
5735
6213
|
storefrontUrl: z.ZodURL;
|
|
5736
6214
|
status: z.ZodEnum<{
|
|
6215
|
+
ACTIVE: "ACTIVE";
|
|
5737
6216
|
SUSPENDED: "SUSPENDED";
|
|
5738
6217
|
CLOSED: "CLOSED";
|
|
5739
|
-
ACTIVE: "ACTIVE";
|
|
5740
6218
|
}>;
|
|
5741
6219
|
logoUrl: z.ZodNullable<z.ZodURL>;
|
|
5742
6220
|
businessNumber: z.ZodNullable<z.ZodString>;
|
|
@@ -5748,9 +6226,9 @@ export declare const storeMemberSchema: z.ZodObject<{
|
|
|
5748
6226
|
name: z.ZodString;
|
|
5749
6227
|
email: z.ZodEmail;
|
|
5750
6228
|
role: z.ZodEnum<{
|
|
6229
|
+
OWNER: "OWNER";
|
|
5751
6230
|
ADMIN: "ADMIN";
|
|
5752
6231
|
STAFF: "STAFF";
|
|
5753
|
-
OWNER: "OWNER";
|
|
5754
6232
|
}>;
|
|
5755
6233
|
joinedAt: z.ZodString;
|
|
5756
6234
|
lastActiveAt: z.ZodNullable<z.ZodString>;
|
|
@@ -6014,9 +6492,9 @@ export declare const storefrontVersionSchema: z.ZodObject<{
|
|
|
6014
6492
|
}, z.core.$strip>;
|
|
6015
6493
|
export type StorefrontVersion = z.infer<typeof storefrontVersionSchema>;
|
|
6016
6494
|
export declare const storefrontSiteStatusSchema: z.ZodEnum<{
|
|
6495
|
+
ACTIVE: "ACTIVE";
|
|
6017
6496
|
SUSPENDED: "SUSPENDED";
|
|
6018
6497
|
CLOSED: "CLOSED";
|
|
6019
|
-
ACTIVE: "ACTIVE";
|
|
6020
6498
|
}>;
|
|
6021
6499
|
export type StorefrontSiteStatus = z.infer<typeof storefrontSiteStatusSchema>;
|
|
6022
6500
|
export declare const storefrontVisibilitySchema: z.ZodEnum<{
|
|
@@ -6048,8 +6526,8 @@ export type StorefrontDomain = z.infer<typeof storefrontDomainSchema>;
|
|
|
6048
6526
|
*/
|
|
6049
6527
|
export declare const storefrontProvisioningSchema: z.ZodObject<{
|
|
6050
6528
|
status: z.ZodEnum<{
|
|
6051
|
-
PENDING: "PENDING";
|
|
6052
6529
|
FAILED: "FAILED";
|
|
6530
|
+
PENDING: "PENDING";
|
|
6053
6531
|
SYNCED: "SYNCED";
|
|
6054
6532
|
}>;
|
|
6055
6533
|
lastErrorCode: z.ZodNullable<z.ZodString>;
|
|
@@ -6097,9 +6575,9 @@ export declare const storefrontSiteSchema: z.ZodObject<{
|
|
|
6097
6575
|
MANAGED: "MANAGED";
|
|
6098
6576
|
}>;
|
|
6099
6577
|
status: z.ZodEnum<{
|
|
6578
|
+
ACTIVE: "ACTIVE";
|
|
6100
6579
|
SUSPENDED: "SUSPENDED";
|
|
6101
6580
|
CLOSED: "CLOSED";
|
|
6102
|
-
ACTIVE: "ACTIVE";
|
|
6103
6581
|
}>;
|
|
6104
6582
|
visibility: z.ZodEnum<{
|
|
6105
6583
|
COMING_SOON: "COMING_SOON";
|
|
@@ -6129,8 +6607,8 @@ export declare const storefrontSiteSchema: z.ZodObject<{
|
|
|
6129
6607
|
}, z.core.$strip>>;
|
|
6130
6608
|
provisioning: z.ZodObject<{
|
|
6131
6609
|
status: z.ZodEnum<{
|
|
6132
|
-
PENDING: "PENDING";
|
|
6133
6610
|
FAILED: "FAILED";
|
|
6611
|
+
PENDING: "PENDING";
|
|
6134
6612
|
SYNCED: "SYNCED";
|
|
6135
6613
|
}>;
|
|
6136
6614
|
lastErrorCode: z.ZodNullable<z.ZodString>;
|
|
@@ -6177,9 +6655,9 @@ export declare const storefrontHostingSchema: z.ZodObject<{
|
|
|
6177
6655
|
MANAGED: "MANAGED";
|
|
6178
6656
|
}>;
|
|
6179
6657
|
status: z.ZodEnum<{
|
|
6658
|
+
ACTIVE: "ACTIVE";
|
|
6180
6659
|
SUSPENDED: "SUSPENDED";
|
|
6181
6660
|
CLOSED: "CLOSED";
|
|
6182
|
-
ACTIVE: "ACTIVE";
|
|
6183
6661
|
}>;
|
|
6184
6662
|
visibility: z.ZodEnum<{
|
|
6185
6663
|
COMING_SOON: "COMING_SOON";
|
|
@@ -6209,8 +6687,8 @@ export declare const storefrontHostingSchema: z.ZodObject<{
|
|
|
6209
6687
|
}, z.core.$strip>>;
|
|
6210
6688
|
provisioning: z.ZodObject<{
|
|
6211
6689
|
status: z.ZodEnum<{
|
|
6212
|
-
PENDING: "PENDING";
|
|
6213
6690
|
FAILED: "FAILED";
|
|
6691
|
+
PENDING: "PENDING";
|
|
6214
6692
|
SYNCED: "SYNCED";
|
|
6215
6693
|
}>;
|
|
6216
6694
|
lastErrorCode: z.ZodNullable<z.ZodString>;
|
|
@@ -6252,8 +6730,8 @@ export declare const storefrontDeploymentStepSchema: z.ZodObject<{
|
|
|
6252
6730
|
PUBLISH: "PUBLISH";
|
|
6253
6731
|
}>;
|
|
6254
6732
|
status: z.ZodEnum<{
|
|
6255
|
-
PENDING: "PENDING";
|
|
6256
6733
|
FAILED: "FAILED";
|
|
6734
|
+
PENDING: "PENDING";
|
|
6257
6735
|
RUNNING: "RUNNING";
|
|
6258
6736
|
DONE: "DONE";
|
|
6259
6737
|
}>;
|
|
@@ -6275,8 +6753,8 @@ export declare const storefrontDeploymentSchema: z.ZodObject<{
|
|
|
6275
6753
|
siteId: z.ZodString;
|
|
6276
6754
|
status: z.ZodEnum<{
|
|
6277
6755
|
IN_PROGRESS: "IN_PROGRESS";
|
|
6278
|
-
FAILED: "FAILED";
|
|
6279
6756
|
SUCCEEDED: "SUCCEEDED";
|
|
6757
|
+
FAILED: "FAILED";
|
|
6280
6758
|
}>;
|
|
6281
6759
|
url: z.ZodString;
|
|
6282
6760
|
startedAt: z.ZodString;
|
|
@@ -6288,8 +6766,8 @@ export declare const storefrontDeploymentSchema: z.ZodObject<{
|
|
|
6288
6766
|
PUBLISH: "PUBLISH";
|
|
6289
6767
|
}>;
|
|
6290
6768
|
status: z.ZodEnum<{
|
|
6291
|
-
PENDING: "PENDING";
|
|
6292
6769
|
FAILED: "FAILED";
|
|
6770
|
+
PENDING: "PENDING";
|
|
6293
6771
|
RUNNING: "RUNNING";
|
|
6294
6772
|
DONE: "DONE";
|
|
6295
6773
|
}>;
|
|
@@ -6456,8 +6934,8 @@ export declare const storefrontSiteDomainSchema: z.ZodObject<{
|
|
|
6456
6934
|
}, z.core.$strip>>;
|
|
6457
6935
|
certificateStatus: z.ZodNullable<z.ZodEnum<{
|
|
6458
6936
|
ACTIVE: "ACTIVE";
|
|
6459
|
-
PENDING: "PENDING";
|
|
6460
6937
|
FAILED: "FAILED";
|
|
6938
|
+
PENDING: "PENDING";
|
|
6461
6939
|
}>>;
|
|
6462
6940
|
failureCode: z.ZodNullable<z.ZodString>;
|
|
6463
6941
|
verifiedAt: z.ZodNullable<z.ZodString>;
|
|
@@ -6499,8 +6977,8 @@ export declare const storefrontSiteDomainsSchema: z.ZodObject<{
|
|
|
6499
6977
|
}, z.core.$strip>>;
|
|
6500
6978
|
certificateStatus: z.ZodNullable<z.ZodEnum<{
|
|
6501
6979
|
ACTIVE: "ACTIVE";
|
|
6502
|
-
PENDING: "PENDING";
|
|
6503
6980
|
FAILED: "FAILED";
|
|
6981
|
+
PENDING: "PENDING";
|
|
6504
6982
|
}>>;
|
|
6505
6983
|
failureCode: z.ZodNullable<z.ZodString>;
|
|
6506
6984
|
verifiedAt: z.ZodNullable<z.ZodString>;
|
|
@@ -6833,8 +7311,8 @@ export declare const storefrontVerifyReportSchema: z.ZodObject<{
|
|
|
6833
7311
|
}, z.core.$strip>;
|
|
6834
7312
|
export type StorefrontVerifyReport = z.infer<typeof storefrontVerifyReportSchema>;
|
|
6835
7313
|
export declare const storefrontBuildStatusSchema: z.ZodEnum<{
|
|
6836
|
-
FAILED: "FAILED";
|
|
6837
7314
|
SUCCEEDED: "SUCCEEDED";
|
|
7315
|
+
FAILED: "FAILED";
|
|
6838
7316
|
RUNNING: "RUNNING";
|
|
6839
7317
|
QUEUED: "QUEUED";
|
|
6840
7318
|
TIMED_OUT: "TIMED_OUT";
|
|
@@ -6901,8 +7379,8 @@ export declare const storefrontBuildSchema: z.ZodObject<{
|
|
|
6901
7379
|
versionId: z.ZodString;
|
|
6902
7380
|
versionNumber: z.ZodNumber;
|
|
6903
7381
|
status: z.ZodEnum<{
|
|
6904
|
-
FAILED: "FAILED";
|
|
6905
7382
|
SUCCEEDED: "SUCCEEDED";
|
|
7383
|
+
FAILED: "FAILED";
|
|
6906
7384
|
RUNNING: "RUNNING";
|
|
6907
7385
|
QUEUED: "QUEUED";
|
|
6908
7386
|
TIMED_OUT: "TIMED_OUT";
|
|
@@ -7030,8 +7508,8 @@ export declare const storefrontVersionCreatedSchema: z.ZodObject<{
|
|
|
7030
7508
|
versionId: z.ZodString;
|
|
7031
7509
|
versionNumber: z.ZodNumber;
|
|
7032
7510
|
status: z.ZodEnum<{
|
|
7033
|
-
FAILED: "FAILED";
|
|
7034
7511
|
SUCCEEDED: "SUCCEEDED";
|
|
7512
|
+
FAILED: "FAILED";
|
|
7035
7513
|
RUNNING: "RUNNING";
|
|
7036
7514
|
QUEUED: "QUEUED";
|
|
7037
7515
|
TIMED_OUT: "TIMED_OUT";
|
|
@@ -7283,9 +7761,9 @@ export type UploadTicket = z.infer<typeof uploadTicketSchema>;
|
|
|
7283
7761
|
//#endregion
|
|
7284
7762
|
//#region src/schemas/auth.d.ts
|
|
7285
7763
|
export declare const storeRoleSchema: z.ZodEnum<{
|
|
7764
|
+
OWNER: "OWNER";
|
|
7286
7765
|
ADMIN: "ADMIN";
|
|
7287
7766
|
STAFF: "STAFF";
|
|
7288
|
-
OWNER: "OWNER";
|
|
7289
7767
|
}>;
|
|
7290
7768
|
export type StoreRole = z.infer<typeof storeRoleSchema>;
|
|
7291
7769
|
export declare const myStoreSchema: z.ZodObject<{
|
|
@@ -7293,14 +7771,14 @@ export declare const myStoreSchema: z.ZodObject<{
|
|
|
7293
7771
|
storeName: z.ZodString;
|
|
7294
7772
|
storeCode: z.ZodString;
|
|
7295
7773
|
role: z.ZodEnum<{
|
|
7774
|
+
OWNER: "OWNER";
|
|
7296
7775
|
ADMIN: "ADMIN";
|
|
7297
7776
|
STAFF: "STAFF";
|
|
7298
|
-
OWNER: "OWNER";
|
|
7299
7777
|
}>;
|
|
7300
7778
|
status: z.ZodEnum<{
|
|
7779
|
+
ACTIVE: "ACTIVE";
|
|
7301
7780
|
SUSPENDED: "SUSPENDED";
|
|
7302
7781
|
CLOSED: "CLOSED";
|
|
7303
|
-
ACTIVE: "ACTIVE";
|
|
7304
7782
|
}>;
|
|
7305
7783
|
}, z.core.$strip>;
|
|
7306
7784
|
export type MyStore = z.infer<typeof myStoreSchema>;
|
|
@@ -7455,8 +7933,8 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
7455
7933
|
storeId: string;
|
|
7456
7934
|
storeName: string;
|
|
7457
7935
|
storeCode: string;
|
|
7458
|
-
role: "
|
|
7459
|
-
status: "
|
|
7936
|
+
role: "OWNER" | "ADMIN" | "STAFF";
|
|
7937
|
+
status: "ACTIVE" | "SUSPENDED" | "CLOSED";
|
|
7460
7938
|
}[]>;
|
|
7461
7939
|
me: () => Promise<{
|
|
7462
7940
|
userId: string;
|
|
@@ -7495,7 +7973,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
7495
7973
|
contents: {
|
|
7496
7974
|
productId: string;
|
|
7497
7975
|
name: string;
|
|
7498
|
-
status: "
|
|
7976
|
+
status: "SUSPENDED" | "CLOSED" | "SALE" | "OUT_OF_STOCK";
|
|
7499
7977
|
salePrice: number;
|
|
7500
7978
|
discountedPrice: number | null;
|
|
7501
7979
|
stockQuantity: number;
|
|
@@ -7512,7 +7990,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
7512
7990
|
get: (productId: string) => Promise<{
|
|
7513
7991
|
productId: string;
|
|
7514
7992
|
name: string;
|
|
7515
|
-
status: "
|
|
7993
|
+
status: "SUSPENDED" | "CLOSED" | "SALE" | "OUT_OF_STOCK";
|
|
7516
7994
|
salePrice: number;
|
|
7517
7995
|
discountedPrice: number | null;
|
|
7518
7996
|
stockQuantity: number;
|
|
@@ -7591,6 +8069,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
7591
8069
|
description?: string | undefined;
|
|
7592
8070
|
descriptionJson?: string | null | undefined;
|
|
7593
8071
|
originalPrice?: number | null | undefined;
|
|
8072
|
+
pointEarnRateBp?: number | null | undefined;
|
|
7594
8073
|
images?: string[] | undefined;
|
|
7595
8074
|
attributes?: {
|
|
7596
8075
|
attributeId: string;
|
|
@@ -7609,7 +8088,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
7609
8088
|
create: (body: ProductCreateRequestInput, idempotencyKey?: string) => Promise<{
|
|
7610
8089
|
productId: string;
|
|
7611
8090
|
name: string;
|
|
7612
|
-
status: "
|
|
8091
|
+
status: "SUSPENDED" | "CLOSED" | "SALE" | "OUT_OF_STOCK";
|
|
7613
8092
|
salePrice: number;
|
|
7614
8093
|
discountedPrice: number | null;
|
|
7615
8094
|
stockQuantity: number;
|
|
@@ -7688,6 +8167,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
7688
8167
|
description?: string | undefined;
|
|
7689
8168
|
descriptionJson?: string | null | undefined;
|
|
7690
8169
|
originalPrice?: number | null | undefined;
|
|
8170
|
+
pointEarnRateBp?: number | null | undefined;
|
|
7691
8171
|
images?: string[] | undefined;
|
|
7692
8172
|
attributes?: {
|
|
7693
8173
|
attributeId: string;
|
|
@@ -7706,7 +8186,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
7706
8186
|
update: (productId: string, body: ProductReplaceRequestInput) => Promise<{
|
|
7707
8187
|
productId: string;
|
|
7708
8188
|
name: string;
|
|
7709
|
-
status: "
|
|
8189
|
+
status: "SUSPENDED" | "CLOSED" | "SALE" | "OUT_OF_STOCK";
|
|
7710
8190
|
salePrice: number;
|
|
7711
8191
|
discountedPrice: number | null;
|
|
7712
8192
|
stockQuantity: number;
|
|
@@ -7785,6 +8265,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
7785
8265
|
description?: string | undefined;
|
|
7786
8266
|
descriptionJson?: string | null | undefined;
|
|
7787
8267
|
originalPrice?: number | null | undefined;
|
|
8268
|
+
pointEarnRateBp?: number | null | undefined;
|
|
7788
8269
|
images?: string[] | undefined;
|
|
7789
8270
|
attributes?: {
|
|
7790
8271
|
attributeId: string;
|
|
@@ -8072,6 +8553,169 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
8072
8553
|
additionalPriceDropped: boolean;
|
|
8073
8554
|
}>;
|
|
8074
8555
|
};
|
|
8556
|
+
/**
|
|
8557
|
+
* 컬렉션 (이슈 #83) — 상품을 어디에 보여 줄지 정하는 묶음(다대다). 권한은 카테고리와 같다(`category:r`·`category:rw`).
|
|
8558
|
+
* 쓰기마다 `revision`이 오른다. 수정 본문에 읽은 `revision`을 주면 그 사이 다른 수정이 있을 때 409 `COLLECTION_CHANGED`다.
|
|
8559
|
+
*/
|
|
8560
|
+
collections: {
|
|
8561
|
+
list: (params?: CollectionListParams) => Promise<{
|
|
8562
|
+
page: number;
|
|
8563
|
+
size: number;
|
|
8564
|
+
totalElements: number;
|
|
8565
|
+
totalPages: number;
|
|
8566
|
+
contents: {
|
|
8567
|
+
collectionId: string;
|
|
8568
|
+
type: string;
|
|
8569
|
+
title: string;
|
|
8570
|
+
slug: string;
|
|
8571
|
+
description: string;
|
|
8572
|
+
imageUrl: string | null;
|
|
8573
|
+
productSort: string;
|
|
8574
|
+
visible: boolean;
|
|
8575
|
+
startsAt: string | null;
|
|
8576
|
+
endsAt: string | null;
|
|
8577
|
+
sortOrder: number;
|
|
8578
|
+
metaTitle: string | null;
|
|
8579
|
+
metaDescription: string | null;
|
|
8580
|
+
state: "ACTIVE" | "ENDED" | "SCHEDULED" | "HIDDEN";
|
|
8581
|
+
productCount: number;
|
|
8582
|
+
revision: number;
|
|
8583
|
+
createdAt: string;
|
|
8584
|
+
updatedAt: string;
|
|
8585
|
+
}[];
|
|
8586
|
+
stateCounts: {
|
|
8587
|
+
ALL: number;
|
|
8588
|
+
ACTIVE: number;
|
|
8589
|
+
SCHEDULED: number;
|
|
8590
|
+
ENDED: number;
|
|
8591
|
+
HIDDEN: number;
|
|
8592
|
+
};
|
|
8593
|
+
}>;
|
|
8594
|
+
get: (collectionId: string) => Promise<{
|
|
8595
|
+
collectionId: string;
|
|
8596
|
+
type: string;
|
|
8597
|
+
title: string;
|
|
8598
|
+
slug: string;
|
|
8599
|
+
description: string;
|
|
8600
|
+
imageUrl: string | null;
|
|
8601
|
+
productSort: string;
|
|
8602
|
+
visible: boolean;
|
|
8603
|
+
startsAt: string | null;
|
|
8604
|
+
endsAt: string | null;
|
|
8605
|
+
sortOrder: number;
|
|
8606
|
+
metaTitle: string | null;
|
|
8607
|
+
metaDescription: string | null;
|
|
8608
|
+
state: "ACTIVE" | "ENDED" | "SCHEDULED" | "HIDDEN";
|
|
8609
|
+
productCount: number;
|
|
8610
|
+
revision: number;
|
|
8611
|
+
createdAt: string;
|
|
8612
|
+
updatedAt: string;
|
|
8613
|
+
}>;
|
|
8614
|
+
/** 주소가 겹치면 409 `COLLECTION_SLUG_TAKEN`, 상점당 200개를 넘으면 409 `COLLECTION_LIMIT_EXCEEDED` */
|
|
8615
|
+
create: (body: CollectionCreateRequestInput) => Promise<{
|
|
8616
|
+
collectionId: string;
|
|
8617
|
+
type: string;
|
|
8618
|
+
title: string;
|
|
8619
|
+
slug: string;
|
|
8620
|
+
description: string;
|
|
8621
|
+
imageUrl: string | null;
|
|
8622
|
+
productSort: string;
|
|
8623
|
+
visible: boolean;
|
|
8624
|
+
startsAt: string | null;
|
|
8625
|
+
endsAt: string | null;
|
|
8626
|
+
sortOrder: number;
|
|
8627
|
+
metaTitle: string | null;
|
|
8628
|
+
metaDescription: string | null;
|
|
8629
|
+
state: "ACTIVE" | "ENDED" | "SCHEDULED" | "HIDDEN";
|
|
8630
|
+
productCount: number;
|
|
8631
|
+
revision: number;
|
|
8632
|
+
createdAt: string;
|
|
8633
|
+
updatedAt: string;
|
|
8634
|
+
}>;
|
|
8635
|
+
update: (collectionId: string, body: CollectionPatchRequest) => Promise<{
|
|
8636
|
+
collectionId: string;
|
|
8637
|
+
type: string;
|
|
8638
|
+
title: string;
|
|
8639
|
+
slug: string;
|
|
8640
|
+
description: string;
|
|
8641
|
+
imageUrl: string | null;
|
|
8642
|
+
productSort: string;
|
|
8643
|
+
visible: boolean;
|
|
8644
|
+
startsAt: string | null;
|
|
8645
|
+
endsAt: string | null;
|
|
8646
|
+
sortOrder: number;
|
|
8647
|
+
metaTitle: string | null;
|
|
8648
|
+
metaDescription: string | null;
|
|
8649
|
+
state: "ACTIVE" | "ENDED" | "SCHEDULED" | "HIDDEN";
|
|
8650
|
+
productCount: number;
|
|
8651
|
+
revision: number;
|
|
8652
|
+
createdAt: string;
|
|
8653
|
+
updatedAt: string;
|
|
8654
|
+
}>;
|
|
8655
|
+
remove: (collectionId: string) => Promise<void>;
|
|
8656
|
+
/** 담긴 상품 — 직접 정한 순서 */
|
|
8657
|
+
listProducts: (collectionId: string, params?: {
|
|
8658
|
+
page?: number;
|
|
8659
|
+
size?: number;
|
|
8660
|
+
}) => Promise<{
|
|
8661
|
+
page: number;
|
|
8662
|
+
size: number;
|
|
8663
|
+
totalElements: number;
|
|
8664
|
+
totalPages: number;
|
|
8665
|
+
contents: {
|
|
8666
|
+
productId: string;
|
|
8667
|
+
name: string;
|
|
8668
|
+
thumbnailUrl: string | null;
|
|
8669
|
+
status: string;
|
|
8670
|
+
salePrice: number;
|
|
8671
|
+
position: number;
|
|
8672
|
+
addedAt: string;
|
|
8673
|
+
}[];
|
|
8674
|
+
}>;
|
|
8675
|
+
/** 담긴 상품을 통째로 바꾼다(순서 포함) */
|
|
8676
|
+
replaceProducts: (collectionId: string, body: CollectionProductsReplaceRequest) => Promise<{
|
|
8677
|
+
collectionId: string;
|
|
8678
|
+
type: string;
|
|
8679
|
+
title: string;
|
|
8680
|
+
slug: string;
|
|
8681
|
+
description: string;
|
|
8682
|
+
imageUrl: string | null;
|
|
8683
|
+
productSort: string;
|
|
8684
|
+
visible: boolean;
|
|
8685
|
+
startsAt: string | null;
|
|
8686
|
+
endsAt: string | null;
|
|
8687
|
+
sortOrder: number;
|
|
8688
|
+
metaTitle: string | null;
|
|
8689
|
+
metaDescription: string | null;
|
|
8690
|
+
state: "ACTIVE" | "ENDED" | "SCHEDULED" | "HIDDEN";
|
|
8691
|
+
productCount: number;
|
|
8692
|
+
revision: number;
|
|
8693
|
+
createdAt: string;
|
|
8694
|
+
updatedAt: string;
|
|
8695
|
+
}>;
|
|
8696
|
+
/** 뒤에 붙인다. 이미 담긴 상품은 그 자리에 둔다 */
|
|
8697
|
+
addProducts: (collectionId: string, body: CollectionProductsAddRequest) => Promise<{
|
|
8698
|
+
collectionId: string;
|
|
8699
|
+
type: string;
|
|
8700
|
+
title: string;
|
|
8701
|
+
slug: string;
|
|
8702
|
+
description: string;
|
|
8703
|
+
imageUrl: string | null;
|
|
8704
|
+
productSort: string;
|
|
8705
|
+
visible: boolean;
|
|
8706
|
+
startsAt: string | null;
|
|
8707
|
+
endsAt: string | null;
|
|
8708
|
+
sortOrder: number;
|
|
8709
|
+
metaTitle: string | null;
|
|
8710
|
+
metaDescription: string | null;
|
|
8711
|
+
state: "ACTIVE" | "ENDED" | "SCHEDULED" | "HIDDEN";
|
|
8712
|
+
productCount: number;
|
|
8713
|
+
revision: number;
|
|
8714
|
+
createdAt: string;
|
|
8715
|
+
updatedAt: string;
|
|
8716
|
+
}>;
|
|
8717
|
+
removeProduct: (collectionId: string, productId: string) => Promise<void>;
|
|
8718
|
+
};
|
|
8075
8719
|
categories: {
|
|
8076
8720
|
list: (params?: {
|
|
8077
8721
|
parentId?: string;
|
|
@@ -8957,7 +9601,80 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
8957
9601
|
}>;
|
|
8958
9602
|
};
|
|
8959
9603
|
/** 구매자 관리 — 조회 `customer:r`, 탈퇴 처리 `customer:rw`(상점 플랫폼 OWNER·ADMIN) */
|
|
9604
|
+
/** 적립금 — 상점 전체 원장(#93). 스코프 `promotion:r` */
|
|
9605
|
+
points: {
|
|
9606
|
+
/** `GET /v1/points/history` — 회원(`memberId`)·유형(`type`)·기간(`from`·`to`)으로 거른다 */
|
|
9607
|
+
listHistory: (params?: PointHistoryQuery) => Promise<{
|
|
9608
|
+
page: number;
|
|
9609
|
+
size: number;
|
|
9610
|
+
totalElements: number;
|
|
9611
|
+
totalPages: number;
|
|
9612
|
+
contents: {
|
|
9613
|
+
entryId: string;
|
|
9614
|
+
memberId: string;
|
|
9615
|
+
type: string;
|
|
9616
|
+
amount: number;
|
|
9617
|
+
balanceAfter: number;
|
|
9618
|
+
refType: string | null;
|
|
9619
|
+
refId: string | null;
|
|
9620
|
+
memo: string | null;
|
|
9621
|
+
actor: string | null;
|
|
9622
|
+
createdAt: string;
|
|
9623
|
+
}[];
|
|
9624
|
+
}>;
|
|
9625
|
+
};
|
|
8960
9626
|
customers: {
|
|
9627
|
+
/** `GET /v1/customers/{customerId}/points` — 잔액·30일 안 소멸 예정·남은 적립 묶음(#93) */
|
|
9628
|
+
getPoints: (customerId: string) => Promise<{
|
|
9629
|
+
balance: number;
|
|
9630
|
+
expiringSoon: number;
|
|
9631
|
+
lots: {
|
|
9632
|
+
lotId: string;
|
|
9633
|
+
source: string;
|
|
9634
|
+
amount: number;
|
|
9635
|
+
remaining: number;
|
|
9636
|
+
expiresAt: string | null;
|
|
9637
|
+
createdAt: string;
|
|
9638
|
+
}[];
|
|
9639
|
+
}>;
|
|
9640
|
+
/** `GET /v1/customers/{customerId}/points/history` — 적립금 내역(최신순, 셀러 사유 포함) */
|
|
9641
|
+
listPointHistory: (customerId: string, params?: Omit<PointHistoryQuery, "memberId">) => Promise<{
|
|
9642
|
+
page: number;
|
|
9643
|
+
size: number;
|
|
9644
|
+
totalElements: number;
|
|
9645
|
+
totalPages: number;
|
|
9646
|
+
contents: {
|
|
9647
|
+
entryId: string;
|
|
9648
|
+
memberId: string;
|
|
9649
|
+
type: string;
|
|
9650
|
+
amount: number;
|
|
9651
|
+
balanceAfter: number;
|
|
9652
|
+
refType: string | null;
|
|
9653
|
+
refId: string | null;
|
|
9654
|
+
memo: string | null;
|
|
9655
|
+
actor: string | null;
|
|
9656
|
+
createdAt: string;
|
|
9657
|
+
}[];
|
|
9658
|
+
}>;
|
|
9659
|
+
/**
|
|
9660
|
+
* `POST /v1/customers/{customerId}/points/adjustments` (201) — 스코프 `promotion:rw`. 양수 지급, 음수 차감. `idempotencyKey`가 필수다.
|
|
9661
|
+
* 에러: 409 `POINT_BALANCE_INSUFFICIENT`·`POINTS_UNAVAILABLE`, 400 `POINT_EXPIRY_REQUIRED`. 에이전트 요청은 승인 대상이다
|
|
9662
|
+
*/
|
|
9663
|
+
adjustPoints: (customerId: string, body: PointAdjustmentRequest, idempotencyKey: string) => Promise<{
|
|
9664
|
+
entry: {
|
|
9665
|
+
entryId: string;
|
|
9666
|
+
memberId: string;
|
|
9667
|
+
type: string;
|
|
9668
|
+
amount: number;
|
|
9669
|
+
balanceAfter: number;
|
|
9670
|
+
refType: string | null;
|
|
9671
|
+
refId: string | null;
|
|
9672
|
+
memo: string | null;
|
|
9673
|
+
actor: string | null;
|
|
9674
|
+
createdAt: string;
|
|
9675
|
+
};
|
|
9676
|
+
balance: number;
|
|
9677
|
+
}>;
|
|
8961
9678
|
list: (params?: PageParams & Omit<z.input<typeof customerListQuerySchema>, "page" | "size">) => Promise<{
|
|
8962
9679
|
page: number;
|
|
8963
9680
|
size: number;
|
|
@@ -9523,7 +10240,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
9523
10240
|
settlementId: string;
|
|
9524
10241
|
settlementDate: string;
|
|
9525
10242
|
payoutDate: string | null;
|
|
9526
|
-
status: "PAID" | "
|
|
10243
|
+
status: "PAID" | "SCHEDULED" | "HELD";
|
|
9527
10244
|
totalPaymentAmount: number;
|
|
9528
10245
|
totalCommission: number;
|
|
9529
10246
|
totalDeliveryFee: number;
|
|
@@ -9537,7 +10254,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
9537
10254
|
settlementId: string;
|
|
9538
10255
|
settlementDate: string;
|
|
9539
10256
|
payoutDate: string | null;
|
|
9540
|
-
status: "PAID" | "
|
|
10257
|
+
status: "PAID" | "SCHEDULED" | "HELD";
|
|
9541
10258
|
totalPaymentAmount: number;
|
|
9542
10259
|
totalCommission: number;
|
|
9543
10260
|
totalDeliveryFee: number;
|
|
@@ -9814,7 +10531,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
9814
10531
|
orderId: string | null;
|
|
9815
10532
|
orderName: string;
|
|
9816
10533
|
customerName: string;
|
|
9817
|
-
status: "
|
|
10534
|
+
status: "FAILED" | "PENDING" | "APPROVED" | "PARTIALLY_REFUNDED" | "REFUNDED";
|
|
9818
10535
|
amount: number;
|
|
9819
10536
|
refundedAmount: number;
|
|
9820
10537
|
provider: "tosspayments" | "portone" | null;
|
|
@@ -9838,7 +10555,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
9838
10555
|
orderId: string | null;
|
|
9839
10556
|
orderName: string;
|
|
9840
10557
|
customerName: string;
|
|
9841
|
-
status: "
|
|
10558
|
+
status: "FAILED" | "PENDING" | "APPROVED" | "PARTIALLY_REFUNDED" | "REFUNDED";
|
|
9842
10559
|
amount: number;
|
|
9843
10560
|
refundedAmount: number;
|
|
9844
10561
|
provider: "tosspayments" | "portone" | null;
|
|
@@ -9937,7 +10654,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
9937
10654
|
masked: string | null;
|
|
9938
10655
|
}[];
|
|
9939
10656
|
lastVerification: {
|
|
9940
|
-
result: "
|
|
10657
|
+
result: "FAILED" | "SUCCESS";
|
|
9941
10658
|
message: string | null;
|
|
9942
10659
|
checkedAt: string;
|
|
9943
10660
|
} | null;
|
|
@@ -9962,7 +10679,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
9962
10679
|
masked: string | null;
|
|
9963
10680
|
}[];
|
|
9964
10681
|
lastVerification: {
|
|
9965
|
-
result: "
|
|
10682
|
+
result: "FAILED" | "SUCCESS";
|
|
9966
10683
|
message: string | null;
|
|
9967
10684
|
checkedAt: string;
|
|
9968
10685
|
} | null;
|
|
@@ -9986,7 +10703,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
9986
10703
|
masked: string | null;
|
|
9987
10704
|
}[];
|
|
9988
10705
|
lastVerification: {
|
|
9989
|
-
result: "
|
|
10706
|
+
result: "FAILED" | "SUCCESS";
|
|
9990
10707
|
message: string | null;
|
|
9991
10708
|
checkedAt: string;
|
|
9992
10709
|
} | null;
|
|
@@ -10047,7 +10764,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
10047
10764
|
masked: string | null;
|
|
10048
10765
|
}[];
|
|
10049
10766
|
lastVerification: {
|
|
10050
|
-
result: "
|
|
10767
|
+
result: "FAILED" | "SUCCESS";
|
|
10051
10768
|
message: string | null;
|
|
10052
10769
|
checkedAt: string;
|
|
10053
10770
|
} | null;
|
|
@@ -10072,7 +10789,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
10072
10789
|
masked: string | null;
|
|
10073
10790
|
}[];
|
|
10074
10791
|
lastVerification: {
|
|
10075
|
-
result: "
|
|
10792
|
+
result: "FAILED" | "SUCCESS";
|
|
10076
10793
|
message: string | null;
|
|
10077
10794
|
checkedAt: string;
|
|
10078
10795
|
} | null;
|
|
@@ -10096,7 +10813,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
10096
10813
|
masked: string | null;
|
|
10097
10814
|
}[];
|
|
10098
10815
|
lastVerification: {
|
|
10099
|
-
result: "
|
|
10816
|
+
result: "FAILED" | "SUCCESS";
|
|
10100
10817
|
message: string | null;
|
|
10101
10818
|
checkedAt: string;
|
|
10102
10819
|
} | null;
|
|
@@ -10162,7 +10879,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
10162
10879
|
masked: string | null;
|
|
10163
10880
|
}[];
|
|
10164
10881
|
lastVerification: {
|
|
10165
|
-
result: "
|
|
10882
|
+
result: "FAILED" | "SUCCESS";
|
|
10166
10883
|
message: string | null;
|
|
10167
10884
|
checkedAt: string;
|
|
10168
10885
|
} | null;
|
|
@@ -10187,7 +10904,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
10187
10904
|
masked: string | null;
|
|
10188
10905
|
}[];
|
|
10189
10906
|
lastVerification: {
|
|
10190
|
-
result: "
|
|
10907
|
+
result: "FAILED" | "SUCCESS";
|
|
10191
10908
|
message: string | null;
|
|
10192
10909
|
checkedAt: string;
|
|
10193
10910
|
} | null;
|
|
@@ -10211,7 +10928,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
10211
10928
|
masked: string | null;
|
|
10212
10929
|
}[];
|
|
10213
10930
|
lastVerification: {
|
|
10214
|
-
result: "
|
|
10931
|
+
result: "FAILED" | "SUCCESS";
|
|
10215
10932
|
message: string | null;
|
|
10216
10933
|
checkedAt: string;
|
|
10217
10934
|
} | null;
|
|
@@ -10258,7 +10975,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
10258
10975
|
masked: string | null;
|
|
10259
10976
|
}[];
|
|
10260
10977
|
lastVerification: {
|
|
10261
|
-
result: "
|
|
10978
|
+
result: "FAILED" | "SUCCESS";
|
|
10262
10979
|
message: string | null;
|
|
10263
10980
|
checkedAt: string;
|
|
10264
10981
|
} | null;
|
|
@@ -10283,7 +11000,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
10283
11000
|
masked: string | null;
|
|
10284
11001
|
}[];
|
|
10285
11002
|
lastVerification: {
|
|
10286
|
-
result: "
|
|
11003
|
+
result: "FAILED" | "SUCCESS";
|
|
10287
11004
|
message: string | null;
|
|
10288
11005
|
checkedAt: string;
|
|
10289
11006
|
} | null;
|
|
@@ -10307,7 +11024,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
10307
11024
|
masked: string | null;
|
|
10308
11025
|
}[];
|
|
10309
11026
|
lastVerification: {
|
|
10310
|
-
result: "
|
|
11027
|
+
result: "FAILED" | "SUCCESS";
|
|
10311
11028
|
message: string | null;
|
|
10312
11029
|
checkedAt: string;
|
|
10313
11030
|
} | null;
|
|
@@ -10364,7 +11081,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
10364
11081
|
masked: string | null;
|
|
10365
11082
|
}[];
|
|
10366
11083
|
lastVerification: {
|
|
10367
|
-
result: "
|
|
11084
|
+
result: "FAILED" | "SUCCESS";
|
|
10368
11085
|
message: string | null;
|
|
10369
11086
|
checkedAt: string;
|
|
10370
11087
|
} | null;
|
|
@@ -10389,7 +11106,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
10389
11106
|
masked: string | null;
|
|
10390
11107
|
}[];
|
|
10391
11108
|
lastVerification: {
|
|
10392
|
-
result: "
|
|
11109
|
+
result: "FAILED" | "SUCCESS";
|
|
10393
11110
|
message: string | null;
|
|
10394
11111
|
checkedAt: string;
|
|
10395
11112
|
} | null;
|
|
@@ -10413,7 +11130,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
10413
11130
|
masked: string | null;
|
|
10414
11131
|
}[];
|
|
10415
11132
|
lastVerification: {
|
|
10416
|
-
result: "
|
|
11133
|
+
result: "FAILED" | "SUCCESS";
|
|
10417
11134
|
message: string | null;
|
|
10418
11135
|
checkedAt: string;
|
|
10419
11136
|
} | null;
|
|
@@ -10460,7 +11177,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
10460
11177
|
masked: string | null;
|
|
10461
11178
|
}[];
|
|
10462
11179
|
lastVerification: {
|
|
10463
|
-
result: "
|
|
11180
|
+
result: "FAILED" | "SUCCESS";
|
|
10464
11181
|
message: string | null;
|
|
10465
11182
|
checkedAt: string;
|
|
10466
11183
|
} | null;
|
|
@@ -10485,7 +11202,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
10485
11202
|
masked: string | null;
|
|
10486
11203
|
}[];
|
|
10487
11204
|
lastVerification: {
|
|
10488
|
-
result: "
|
|
11205
|
+
result: "FAILED" | "SUCCESS";
|
|
10489
11206
|
message: string | null;
|
|
10490
11207
|
checkedAt: string;
|
|
10491
11208
|
} | null;
|
|
@@ -10509,7 +11226,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
10509
11226
|
masked: string | null;
|
|
10510
11227
|
}[];
|
|
10511
11228
|
lastVerification: {
|
|
10512
|
-
result: "
|
|
11229
|
+
result: "FAILED" | "SUCCESS";
|
|
10513
11230
|
message: string | null;
|
|
10514
11231
|
checkedAt: string;
|
|
10515
11232
|
} | null;
|
|
@@ -10565,7 +11282,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
10565
11282
|
masked: string | null;
|
|
10566
11283
|
}[];
|
|
10567
11284
|
lastVerification: {
|
|
10568
|
-
result: "
|
|
11285
|
+
result: "FAILED" | "SUCCESS";
|
|
10569
11286
|
message: string | null;
|
|
10570
11287
|
checkedAt: string;
|
|
10571
11288
|
} | null;
|
|
@@ -10590,7 +11307,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
10590
11307
|
masked: string | null;
|
|
10591
11308
|
}[];
|
|
10592
11309
|
lastVerification: {
|
|
10593
|
-
result: "
|
|
11310
|
+
result: "FAILED" | "SUCCESS";
|
|
10594
11311
|
message: string | null;
|
|
10595
11312
|
checkedAt: string;
|
|
10596
11313
|
} | null;
|
|
@@ -10614,7 +11331,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
10614
11331
|
masked: string | null;
|
|
10615
11332
|
}[];
|
|
10616
11333
|
lastVerification: {
|
|
10617
|
-
result: "
|
|
11334
|
+
result: "FAILED" | "SUCCESS";
|
|
10618
11335
|
message: string | null;
|
|
10619
11336
|
checkedAt: string;
|
|
10620
11337
|
} | null;
|
|
@@ -10642,7 +11359,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
10642
11359
|
verify: (provider: PgProvider, body?: VerifyPaymentProviderRequest) => Promise<{
|
|
10643
11360
|
provider: "tosspayments" | "portone";
|
|
10644
11361
|
environment: "TEST" | "LIVE";
|
|
10645
|
-
result: "
|
|
11362
|
+
result: "FAILED" | "SUCCESS";
|
|
10646
11363
|
message: string | null;
|
|
10647
11364
|
checkedAt: string;
|
|
10648
11365
|
}>;
|
|
@@ -10652,7 +11369,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
10652
11369
|
webhookId: string;
|
|
10653
11370
|
url: string;
|
|
10654
11371
|
eventTypes: ("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")[];
|
|
10655
|
-
status: "
|
|
11372
|
+
status: "ACTIVE" | "SUSPENDED";
|
|
10656
11373
|
secretPrefix: string;
|
|
10657
11374
|
suspendedAt: string | null;
|
|
10658
11375
|
createdAt: string;
|
|
@@ -10662,7 +11379,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
10662
11379
|
webhookId: string;
|
|
10663
11380
|
url: string;
|
|
10664
11381
|
eventTypes: ("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")[];
|
|
10665
|
-
status: "
|
|
11382
|
+
status: "ACTIVE" | "SUSPENDED";
|
|
10666
11383
|
secretPrefix: string;
|
|
10667
11384
|
suspendedAt: string | null;
|
|
10668
11385
|
createdAt: string;
|
|
@@ -10672,7 +11389,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
10672
11389
|
webhookId: string;
|
|
10673
11390
|
url: string;
|
|
10674
11391
|
eventTypes: ("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")[];
|
|
10675
|
-
status: "
|
|
11392
|
+
status: "ACTIVE" | "SUSPENDED";
|
|
10676
11393
|
secretPrefix: string;
|
|
10677
11394
|
suspendedAt: string | null;
|
|
10678
11395
|
createdAt: string;
|
|
@@ -10682,7 +11399,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
10682
11399
|
webhookId: string;
|
|
10683
11400
|
url: string;
|
|
10684
11401
|
eventTypes: ("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")[];
|
|
10685
|
-
status: "
|
|
11402
|
+
status: "ACTIVE" | "SUSPENDED";
|
|
10686
11403
|
secretPrefix: string;
|
|
10687
11404
|
suspendedAt: string | null;
|
|
10688
11405
|
createdAt: string;
|
|
@@ -10697,7 +11414,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
10697
11414
|
webhookId: string;
|
|
10698
11415
|
url: string;
|
|
10699
11416
|
eventTypes: ("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")[];
|
|
10700
|
-
status: "
|
|
11417
|
+
status: "ACTIVE" | "SUSPENDED";
|
|
10701
11418
|
secretPrefix: string;
|
|
10702
11419
|
suspendedAt: string | null;
|
|
10703
11420
|
createdAt: string;
|
|
@@ -10708,7 +11425,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
10708
11425
|
eventId: string;
|
|
10709
11426
|
eventType: "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";
|
|
10710
11427
|
url: string;
|
|
10711
|
-
status: "
|
|
11428
|
+
status: "FAILED" | "PENDING" | "PENDING_RETRY" | "SUCCESS";
|
|
10712
11429
|
responseStatusCode: number | null;
|
|
10713
11430
|
responseTimeMs: number | null;
|
|
10714
11431
|
responseBodyExcerpt: string | null;
|
|
@@ -10735,7 +11452,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
10735
11452
|
eventId: string;
|
|
10736
11453
|
eventType: "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";
|
|
10737
11454
|
url: string;
|
|
10738
|
-
status: "
|
|
11455
|
+
status: "FAILED" | "PENDING" | "PENDING_RETRY" | "SUCCESS";
|
|
10739
11456
|
responseStatusCode: number | null;
|
|
10740
11457
|
responseTimeMs: number | null;
|
|
10741
11458
|
responseBodyExcerpt: string | null;
|
|
@@ -10770,7 +11487,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
10770
11487
|
eventId: string;
|
|
10771
11488
|
eventType: "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";
|
|
10772
11489
|
url: string;
|
|
10773
|
-
status: "
|
|
11490
|
+
status: "FAILED" | "PENDING" | "PENDING_RETRY" | "SUCCESS";
|
|
10774
11491
|
responseStatusCode: number | null;
|
|
10775
11492
|
responseTimeMs: number | null;
|
|
10776
11493
|
responseBodyExcerpt: string | null;
|
|
@@ -10866,7 +11583,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
10866
11583
|
method: string | null;
|
|
10867
11584
|
path: string | null;
|
|
10868
11585
|
statusCode: number | null;
|
|
10869
|
-
outcome: "
|
|
11586
|
+
outcome: "SUCCEEDED" | "FAILED" | "PENDING_APPROVAL" | "DENIED" | "DRY_RUN" | null;
|
|
10870
11587
|
errorCode: string | null;
|
|
10871
11588
|
traceId: string | null;
|
|
10872
11589
|
idempotencyKey: string | null;
|
|
@@ -10884,7 +11601,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
10884
11601
|
list: (params?: ApprovalListOptions) => Promise<{
|
|
10885
11602
|
items: {
|
|
10886
11603
|
approvalId: string;
|
|
10887
|
-
status: "UNKNOWN" | "
|
|
11604
|
+
status: "UNKNOWN" | "SUCCEEDED" | "FAILED" | "PENDING" | "EXECUTING" | "REJECTED" | "EXPIRED";
|
|
10888
11605
|
operationId: string;
|
|
10889
11606
|
method: string;
|
|
10890
11607
|
path: string;
|
|
@@ -10934,7 +11651,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
10934
11651
|
}>;
|
|
10935
11652
|
get: (approvalId: string) => Promise<{
|
|
10936
11653
|
approvalId: string;
|
|
10937
|
-
status: "UNKNOWN" | "
|
|
11654
|
+
status: "UNKNOWN" | "SUCCEEDED" | "FAILED" | "PENDING" | "EXECUTING" | "REJECTED" | "EXPIRED";
|
|
10938
11655
|
operationId: string;
|
|
10939
11656
|
method: string;
|
|
10940
11657
|
path: string;
|
|
@@ -10986,7 +11703,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
10986
11703
|
*/
|
|
10987
11704
|
approve: (approvalId: string, body?: ApprovalDecisionRequest) => Promise<{
|
|
10988
11705
|
approvalId: string;
|
|
10989
|
-
status: "UNKNOWN" | "
|
|
11706
|
+
status: "UNKNOWN" | "SUCCEEDED" | "FAILED" | "PENDING" | "EXECUTING" | "REJECTED" | "EXPIRED";
|
|
10990
11707
|
operationId: string;
|
|
10991
11708
|
method: string;
|
|
10992
11709
|
path: string;
|
|
@@ -11034,7 +11751,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
11034
11751
|
}>;
|
|
11035
11752
|
reject: (approvalId: string, body?: ApprovalDecisionRequest) => Promise<{
|
|
11036
11753
|
approvalId: string;
|
|
11037
|
-
status: "UNKNOWN" | "
|
|
11754
|
+
status: "UNKNOWN" | "SUCCEEDED" | "FAILED" | "PENDING" | "EXECUTING" | "REJECTED" | "EXPIRED";
|
|
11038
11755
|
operationId: string;
|
|
11039
11756
|
method: string;
|
|
11040
11757
|
path: string;
|
|
@@ -11184,7 +11901,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
11184
11901
|
}[];
|
|
11185
11902
|
templateId: string;
|
|
11186
11903
|
sourceMode: "CUSTOM" | "MANAGED";
|
|
11187
|
-
status: "
|
|
11904
|
+
status: "ACTIVE" | "SUSPENDED" | "CLOSED";
|
|
11188
11905
|
visibility: "COMING_SOON" | "PUBLIC";
|
|
11189
11906
|
publishedVersion: {
|
|
11190
11907
|
versionId: string;
|
|
@@ -11202,7 +11919,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
11202
11919
|
createdVia?: string | null | undefined;
|
|
11203
11920
|
} | null;
|
|
11204
11921
|
provisioning: {
|
|
11205
|
-
status: "
|
|
11922
|
+
status: "FAILED" | "PENDING" | "SYNCED";
|
|
11206
11923
|
lastErrorCode: string | null;
|
|
11207
11924
|
syncedAt: string | null;
|
|
11208
11925
|
};
|
|
@@ -11242,7 +11959,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
11242
11959
|
}[];
|
|
11243
11960
|
templateId: string;
|
|
11244
11961
|
sourceMode: "CUSTOM" | "MANAGED";
|
|
11245
|
-
status: "
|
|
11962
|
+
status: "ACTIVE" | "SUSPENDED" | "CLOSED";
|
|
11246
11963
|
visibility: "COMING_SOON" | "PUBLIC";
|
|
11247
11964
|
publishedVersion: {
|
|
11248
11965
|
versionId: string;
|
|
@@ -11260,7 +11977,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
11260
11977
|
createdVia?: string | null | undefined;
|
|
11261
11978
|
} | null;
|
|
11262
11979
|
provisioning: {
|
|
11263
|
-
status: "
|
|
11980
|
+
status: "FAILED" | "PENDING" | "SYNCED";
|
|
11264
11981
|
lastErrorCode: string | null;
|
|
11265
11982
|
syncedAt: string | null;
|
|
11266
11983
|
};
|
|
@@ -11278,13 +11995,13 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
11278
11995
|
/** `GET /v1/storefront/site/deployment` — 배포 진행(단계·기록). 만든 뒤 반영이 끝날 때까지 폴링한다 */
|
|
11279
11996
|
getDeployment: () => Promise<{
|
|
11280
11997
|
siteId: string;
|
|
11281
|
-
status: "IN_PROGRESS" | "
|
|
11998
|
+
status: "IN_PROGRESS" | "SUCCEEDED" | "FAILED";
|
|
11282
11999
|
url: string;
|
|
11283
12000
|
startedAt: string;
|
|
11284
12001
|
finishedAt: string | null;
|
|
11285
12002
|
steps: {
|
|
11286
12003
|
key: "SITE" | "UPLOAD" | "PUBLISH";
|
|
11287
|
-
status: "
|
|
12004
|
+
status: "FAILED" | "PENDING" | "RUNNING" | "DONE";
|
|
11288
12005
|
finishedAt: string | null;
|
|
11289
12006
|
}[];
|
|
11290
12007
|
log: {
|
|
@@ -11300,13 +12017,13 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
11300
12017
|
/** `POST /v1/storefront/site/deployment/retry` (202) — 밀린 반영을 곧바로 다시 시도한다. 이미 반영됐으면 그대로다 */
|
|
11301
12018
|
retryDeployment: () => Promise<{
|
|
11302
12019
|
siteId: string;
|
|
11303
|
-
status: "IN_PROGRESS" | "
|
|
12020
|
+
status: "IN_PROGRESS" | "SUCCEEDED" | "FAILED";
|
|
11304
12021
|
url: string;
|
|
11305
12022
|
startedAt: string;
|
|
11306
12023
|
finishedAt: string | null;
|
|
11307
12024
|
steps: {
|
|
11308
12025
|
key: "SITE" | "UPLOAD" | "PUBLISH";
|
|
11309
|
-
status: "
|
|
12026
|
+
status: "FAILED" | "PENDING" | "RUNNING" | "DONE";
|
|
11310
12027
|
finishedAt: string | null;
|
|
11311
12028
|
}[];
|
|
11312
12029
|
log: {
|
|
@@ -11338,7 +12055,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
11338
12055
|
}[];
|
|
11339
12056
|
templateId: string;
|
|
11340
12057
|
sourceMode: "CUSTOM" | "MANAGED";
|
|
11341
|
-
status: "
|
|
12058
|
+
status: "ACTIVE" | "SUSPENDED" | "CLOSED";
|
|
11342
12059
|
visibility: "COMING_SOON" | "PUBLIC";
|
|
11343
12060
|
publishedVersion: {
|
|
11344
12061
|
versionId: string;
|
|
@@ -11356,7 +12073,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
11356
12073
|
createdVia?: string | null | undefined;
|
|
11357
12074
|
} | null;
|
|
11358
12075
|
provisioning: {
|
|
11359
|
-
status: "
|
|
12076
|
+
status: "FAILED" | "PENDING" | "SYNCED";
|
|
11360
12077
|
lastErrorCode: string | null;
|
|
11361
12078
|
syncedAt: string | null;
|
|
11362
12079
|
};
|
|
@@ -11402,7 +12119,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
11402
12119
|
}[];
|
|
11403
12120
|
templateId: string;
|
|
11404
12121
|
sourceMode: "CUSTOM" | "MANAGED";
|
|
11405
|
-
status: "
|
|
12122
|
+
status: "ACTIVE" | "SUSPENDED" | "CLOSED";
|
|
11406
12123
|
visibility: "COMING_SOON" | "PUBLIC";
|
|
11407
12124
|
publishedVersion: {
|
|
11408
12125
|
versionId: string;
|
|
@@ -11420,7 +12137,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
11420
12137
|
createdVia?: string | null | undefined;
|
|
11421
12138
|
} | null;
|
|
11422
12139
|
provisioning: {
|
|
11423
|
-
status: "
|
|
12140
|
+
status: "FAILED" | "PENDING" | "SYNCED";
|
|
11424
12141
|
lastErrorCode: string | null;
|
|
11425
12142
|
syncedAt: string | null;
|
|
11426
12143
|
};
|
|
@@ -11450,7 +12167,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
11450
12167
|
}[];
|
|
11451
12168
|
templateId: string;
|
|
11452
12169
|
sourceMode: "CUSTOM" | "MANAGED";
|
|
11453
|
-
status: "
|
|
12170
|
+
status: "ACTIVE" | "SUSPENDED" | "CLOSED";
|
|
11454
12171
|
visibility: "COMING_SOON" | "PUBLIC";
|
|
11455
12172
|
publishedVersion: {
|
|
11456
12173
|
versionId: string;
|
|
@@ -11468,7 +12185,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
11468
12185
|
createdVia?: string | null | undefined;
|
|
11469
12186
|
} | null;
|
|
11470
12187
|
provisioning: {
|
|
11471
|
-
status: "
|
|
12188
|
+
status: "FAILED" | "PENDING" | "SYNCED";
|
|
11472
12189
|
lastErrorCode: string | null;
|
|
11473
12190
|
syncedAt: string | null;
|
|
11474
12191
|
};
|
|
@@ -11498,7 +12215,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
11498
12215
|
}[];
|
|
11499
12216
|
templateId: string;
|
|
11500
12217
|
sourceMode: "CUSTOM" | "MANAGED";
|
|
11501
|
-
status: "
|
|
12218
|
+
status: "ACTIVE" | "SUSPENDED" | "CLOSED";
|
|
11502
12219
|
visibility: "COMING_SOON" | "PUBLIC";
|
|
11503
12220
|
publishedVersion: {
|
|
11504
12221
|
versionId: string;
|
|
@@ -11516,7 +12233,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
11516
12233
|
createdVia?: string | null | undefined;
|
|
11517
12234
|
} | null;
|
|
11518
12235
|
provisioning: {
|
|
11519
|
-
status: "
|
|
12236
|
+
status: "FAILED" | "PENDING" | "SYNCED";
|
|
11520
12237
|
lastErrorCode: string | null;
|
|
11521
12238
|
syncedAt: string | null;
|
|
11522
12239
|
};
|
|
@@ -11546,7 +12263,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
11546
12263
|
}[];
|
|
11547
12264
|
templateId: string;
|
|
11548
12265
|
sourceMode: "CUSTOM" | "MANAGED";
|
|
11549
|
-
status: "
|
|
12266
|
+
status: "ACTIVE" | "SUSPENDED" | "CLOSED";
|
|
11550
12267
|
visibility: "COMING_SOON" | "PUBLIC";
|
|
11551
12268
|
publishedVersion: {
|
|
11552
12269
|
versionId: string;
|
|
@@ -11564,7 +12281,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
11564
12281
|
createdVia?: string | null | undefined;
|
|
11565
12282
|
} | null;
|
|
11566
12283
|
provisioning: {
|
|
11567
|
-
status: "
|
|
12284
|
+
status: "FAILED" | "PENDING" | "SYNCED";
|
|
11568
12285
|
lastErrorCode: string | null;
|
|
11569
12286
|
syncedAt: string | null;
|
|
11570
12287
|
};
|
|
@@ -11604,7 +12321,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
11604
12321
|
value: string;
|
|
11605
12322
|
purpose: "ROUTING" | "OWNERSHIP";
|
|
11606
12323
|
}[];
|
|
11607
|
-
certificateStatus: "ACTIVE" | "
|
|
12324
|
+
certificateStatus: "ACTIVE" | "FAILED" | "PENDING" | null;
|
|
11608
12325
|
failureCode: string | null;
|
|
11609
12326
|
verifiedAt: string | null;
|
|
11610
12327
|
activatedAt: string | null;
|
|
@@ -11628,7 +12345,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
11628
12345
|
value: string;
|
|
11629
12346
|
purpose: "ROUTING" | "OWNERSHIP";
|
|
11630
12347
|
}[];
|
|
11631
|
-
certificateStatus: "ACTIVE" | "
|
|
12348
|
+
certificateStatus: "ACTIVE" | "FAILED" | "PENDING" | null;
|
|
11632
12349
|
failureCode: string | null;
|
|
11633
12350
|
verifiedAt: string | null;
|
|
11634
12351
|
activatedAt: string | null;
|
|
@@ -11648,7 +12365,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
11648
12365
|
value: string;
|
|
11649
12366
|
purpose: "ROUTING" | "OWNERSHIP";
|
|
11650
12367
|
}[];
|
|
11651
|
-
certificateStatus: "ACTIVE" | "
|
|
12368
|
+
certificateStatus: "ACTIVE" | "FAILED" | "PENDING" | null;
|
|
11652
12369
|
failureCode: string | null;
|
|
11653
12370
|
verifiedAt: string | null;
|
|
11654
12371
|
activatedAt: string | null;
|
|
@@ -11672,7 +12389,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
11672
12389
|
value: string;
|
|
11673
12390
|
purpose: "ROUTING" | "OWNERSHIP";
|
|
11674
12391
|
}[];
|
|
11675
|
-
certificateStatus: "ACTIVE" | "
|
|
12392
|
+
certificateStatus: "ACTIVE" | "FAILED" | "PENDING" | null;
|
|
11676
12393
|
failureCode: string | null;
|
|
11677
12394
|
verifiedAt: string | null;
|
|
11678
12395
|
activatedAt: string | null;
|
|
@@ -11697,7 +12414,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
11697
12414
|
}[];
|
|
11698
12415
|
templateId: string;
|
|
11699
12416
|
sourceMode: "CUSTOM" | "MANAGED";
|
|
11700
|
-
status: "
|
|
12417
|
+
status: "ACTIVE" | "SUSPENDED" | "CLOSED";
|
|
11701
12418
|
visibility: "COMING_SOON" | "PUBLIC";
|
|
11702
12419
|
publishedVersion: {
|
|
11703
12420
|
versionId: string;
|
|
@@ -11715,7 +12432,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
11715
12432
|
createdVia?: string | null | undefined;
|
|
11716
12433
|
} | null;
|
|
11717
12434
|
provisioning: {
|
|
11718
|
-
status: "
|
|
12435
|
+
status: "FAILED" | "PENDING" | "SYNCED";
|
|
11719
12436
|
lastErrorCode: string | null;
|
|
11720
12437
|
syncedAt: string | null;
|
|
11721
12438
|
};
|
|
@@ -11956,7 +12673,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
11956
12673
|
buildId: string;
|
|
11957
12674
|
versionId: string;
|
|
11958
12675
|
versionNumber: number;
|
|
11959
|
-
status: "
|
|
12676
|
+
status: "SUCCEEDED" | "FAILED" | "RUNNING" | "QUEUED" | "TIMED_OUT";
|
|
11960
12677
|
failureStage: string | null;
|
|
11961
12678
|
errorCode: string | null;
|
|
11962
12679
|
logTail: string | null;
|
|
@@ -12037,7 +12754,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
12037
12754
|
buildId: string;
|
|
12038
12755
|
versionId: string;
|
|
12039
12756
|
versionNumber: number;
|
|
12040
|
-
status: "
|
|
12757
|
+
status: "SUCCEEDED" | "FAILED" | "RUNNING" | "QUEUED" | "TIMED_OUT";
|
|
12041
12758
|
failureStage: string | null;
|
|
12042
12759
|
errorCode: string | null;
|
|
12043
12760
|
logTail: string | null;
|
|
@@ -12115,7 +12832,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
12115
12832
|
buildId: string;
|
|
12116
12833
|
versionId: string;
|
|
12117
12834
|
versionNumber: number;
|
|
12118
|
-
status: "
|
|
12835
|
+
status: "SUCCEEDED" | "FAILED" | "RUNNING" | "QUEUED" | "TIMED_OUT";
|
|
12119
12836
|
failureStage: string | null;
|
|
12120
12837
|
errorCode: string | null;
|
|
12121
12838
|
logTail: string | null;
|
|
@@ -12400,7 +13117,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
12400
13117
|
name: string;
|
|
12401
13118
|
storeCode: string;
|
|
12402
13119
|
storefrontUrl: string;
|
|
12403
|
-
status: "
|
|
13120
|
+
status: "ACTIVE" | "SUSPENDED" | "CLOSED";
|
|
12404
13121
|
logoUrl: string | null;
|
|
12405
13122
|
businessNumber: string | null;
|
|
12406
13123
|
customerCenterPhone: string | null;
|
|
@@ -12448,16 +13165,54 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
12448
13165
|
name: string;
|
|
12449
13166
|
storeCode: string;
|
|
12450
13167
|
storefrontUrl: string;
|
|
12451
|
-
status: "
|
|
13168
|
+
status: "ACTIVE" | "SUSPENDED" | "CLOSED";
|
|
12452
13169
|
logoUrl: string | null;
|
|
12453
13170
|
businessNumber: string | null;
|
|
12454
13171
|
customerCenterPhone: string | null;
|
|
12455
13172
|
}>;
|
|
13173
|
+
/**
|
|
13174
|
+
* `GET /v1/store/point-policy` — 스코프 `promotion:r`. 적립금 정책(리뷰 적립·유효 기간)과 준비 여부(`available`), 상점에 보일 안내(`notice`).
|
|
13175
|
+
* 정책을 정하지 않았으면 모두 끔이다(#93)
|
|
13176
|
+
*/
|
|
13177
|
+
getPointPolicy: () => Promise<{
|
|
13178
|
+
available: boolean;
|
|
13179
|
+
configured: boolean;
|
|
13180
|
+
reviewReward: {
|
|
13181
|
+
enabled: boolean;
|
|
13182
|
+
textPoint: number;
|
|
13183
|
+
photoPoint: number;
|
|
13184
|
+
};
|
|
13185
|
+
purchaseEarn: {
|
|
13186
|
+
enabled: boolean;
|
|
13187
|
+
rateBp: number;
|
|
13188
|
+
};
|
|
13189
|
+
expiryDays: number | null;
|
|
13190
|
+
notice: "REVIEW_REWARD_PAUSED" | "POINTS_AVAILABLE" | null;
|
|
13191
|
+
}>;
|
|
13192
|
+
/**
|
|
13193
|
+
* `PUT /v1/store/point-policy` — 스코프 `promotion:rw`. 준 항목만 바꾼다. 에이전트 요청은 승인 대상이다.
|
|
13194
|
+
* 에러: 409 `POINTS_UNAVAILABLE`(준비 중) · 400 `POINT_EXPIRY_REQUIRED`(리뷰 적립을 켜는데 유효 기간이 없음)
|
|
13195
|
+
*/
|
|
13196
|
+
updatePointPolicy: (body: UpdatePointPolicyRequest) => Promise<{
|
|
13197
|
+
available: boolean;
|
|
13198
|
+
configured: boolean;
|
|
13199
|
+
reviewReward: {
|
|
13200
|
+
enabled: boolean;
|
|
13201
|
+
textPoint: number;
|
|
13202
|
+
photoPoint: number;
|
|
13203
|
+
};
|
|
13204
|
+
purchaseEarn: {
|
|
13205
|
+
enabled: boolean;
|
|
13206
|
+
rateBp: number;
|
|
13207
|
+
};
|
|
13208
|
+
expiryDays: number | null;
|
|
13209
|
+
notice: "REVIEW_REWARD_PAUSED" | "POINTS_AVAILABLE" | null;
|
|
13210
|
+
}>;
|
|
12456
13211
|
listMembers: () => Promise<{
|
|
12457
13212
|
userId: string;
|
|
12458
13213
|
name: string;
|
|
12459
13214
|
email: string;
|
|
12460
|
-
role: "
|
|
13215
|
+
role: "OWNER" | "ADMIN" | "STAFF";
|
|
12461
13216
|
joinedAt: string;
|
|
12462
13217
|
lastActiveAt: string | null;
|
|
12463
13218
|
}[]>;
|