@krds.ui/vue 0.0.19 → 0.0.21

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.
@@ -18,6 +18,7 @@ export declare type AlertType = 'danger' | 'ok' | 'info';
18
18
 
19
19
  /**
20
20
  * 정렬 타입
21
+ * @deprecated 라이브러리에서 쓰이지 않아 다음 breaking 릴리스에서 제거 예정
21
22
  */
22
23
  export declare type Alignment = 'left' | 'center' | 'right' | 'justify';
23
24
 
@@ -84,6 +85,10 @@ declare namespace components {
84
85
  KrdsButtonGroupProps,
85
86
  KrdsIcon,
86
87
  KrdsIconProps,
88
+ KrdsFloatingButton,
89
+ KrdsFloatingButtonProps,
90
+ KrdsFloatingButtonEmits,
91
+ KrdsFloatingButtonItem,
87
92
  KrdsLink,
88
93
  KrdsLinkProps,
89
94
  KrdsLinkEmits,
@@ -172,6 +177,8 @@ declare namespace components {
172
177
  DropdownPosition,
173
178
  KrdsResize,
174
179
  KrdsResizeEmits,
180
+ KrdsResizeProps,
181
+ KrdsResizeScale,
175
182
  KrdsModal,
176
183
  KrdsModalProps,
177
184
  KrdsModalSize,
@@ -244,6 +251,7 @@ declare namespace components {
244
251
 
245
252
  /**
246
253
  * 컴포넌트 슬롯 타입
254
+ * @deprecated 라이브러리에서 쓰이지 않아 다음 breaking 릴리스에서 제거 예정
247
255
  */
248
256
  export declare interface ComponentSlots {
249
257
  default?: () => unknown;
@@ -252,6 +260,7 @@ export declare interface ComponentSlots {
252
260
 
253
261
  /**
254
262
  * 컴포넌트 상태 타입
263
+ * @deprecated 라이브러리에서 쓰이지 않아 다음 breaking 릴리스에서 제거 예정
255
264
  */
256
265
  export declare type ComponentState = 'default' | 'hover' | 'active' | 'focus' | 'disabled';
257
266
 
@@ -259,11 +268,13 @@ declare type ContextualHelpPosition = 'top left' | 'top center' | 'top right' |
259
268
 
260
269
  /**
261
270
  * CSS 변수 타입
271
+ * @deprecated 라이브러리에서 쓰이지 않아 다음 breaking 릴리스에서 제거 예정
262
272
  */
263
273
  export declare type CSSCustomProperties = Record<`--${string}`, string | number>;
264
274
 
265
275
  /**
266
276
  * 방향 타입
277
+ * @deprecated 라이브러리에서 쓰이지 않아 다음 breaking 릴리스에서 제거 예정
267
278
  */
268
279
  export declare type Direction = 'horizontal' | 'vertical';
269
280
 
@@ -302,6 +313,7 @@ export declare interface FileInfo {
302
313
  *
303
314
  * @param prefix - ID 접두사
304
315
  * @returns 고유한 ID 문자열
316
+ * @deprecated 모듈 전역 카운터라 SSR에서 요청 간 값이 공유된다. Vue의 `useId()`를 사용. 다음 breaking 릴리스에서 제거 예정
305
317
  */
306
318
  export declare function generateId(prefix?: string): string;
307
319
 
@@ -310,11 +322,13 @@ export declare function generateId(prefix?: string): string;
310
322
  * 브라우저와 Node.js 환경에서 모두 작동합니다.
311
323
  *
312
324
  * @returns 7자리 랜덤 문자열
325
+ * @deprecated 라이브러리에서 쓰이지 않아 다음 breaking 릴리스에서 제거 예정
313
326
  */
314
327
  export declare function generateUid(): string;
315
328
 
316
329
  /**
317
330
  * 아이콘 속성
331
+ * @deprecated 라이브러리에서 쓰이지 않아 다음 breaking 릴리스에서 제거 예정
318
332
  */
319
333
  export declare interface IconProps {
320
334
  /** 아이콘 이름 */
@@ -327,6 +341,7 @@ export declare interface IconProps {
327
341
 
328
342
  /**
329
343
  * 입력 상태 타입
344
+ * @deprecated 라이브러리에서 쓰이지 않아 다음 breaking 릴리스에서 제거 예정
330
345
  */
331
346
  export declare type InputState = ComponentState | 'error' | 'success';
332
347
 
@@ -392,6 +407,7 @@ export declare const KrdsAccordionItem: DefineComponent<ExtractPropTypes<{
392
407
  }>, () => VNode<RendererNode, RendererElement, {
393
408
  [key: string]: any;
394
409
  }>, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
410
+ /** 펼침·접힘 버튼을 눌렀을 때 (항목 id) */
395
411
  toggle: (id: string) => true;
396
412
  }, string, PublicProps, Readonly< ExtractPropTypes<{
397
413
  /** 아이템 고유 식별자 */
@@ -472,6 +488,7 @@ export declare const KrdsBadge: DefineComponent<ExtractPropTypes<{
472
488
  }>, () => VNode<RendererNode, RendererElement, {
473
489
  [key: string]: any;
474
490
  }>, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
491
+ /** 배지를 클릭했을 때 */
475
492
  click: (event: MouseEvent) => true;
476
493
  }, string, PublicProps, Readonly< ExtractPropTypes<{
477
494
  /** 배지 타입 */
@@ -551,6 +568,7 @@ export declare const KrdsBreadcrumb: DefineComponent<ExtractPropTypes<{
551
568
  }>, () => VNode<RendererNode, RendererElement, {
552
569
  [key: string]: any;
553
570
  }>, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
571
+ /** 경로 항목을 클릭했을 때 */
554
572
  'item-click': (item: BreadcrumbItem, event: MouseEvent) => true;
555
573
  }, string, PublicProps, Readonly< ExtractPropTypes<{
556
574
  /** 브레드크럼 아이템 배열 */
@@ -651,6 +669,7 @@ export declare const KrdsButton: DefineComponent<ExtractPropTypes<{
651
669
  }>, () => VNode<RendererNode, RendererElement, {
652
670
  [key: string]: any;
653
671
  }>, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
672
+ /** 버튼을 클릭했을 때 */
654
673
  click: (event: MouseEvent) => true;
655
674
  }, string, PublicProps, Readonly< ExtractPropTypes<{
656
675
  /** 버튼 타입 */
@@ -719,6 +738,22 @@ export declare interface KrdsButtonEmits {
719
738
  (e: 'click', event: MouseEvent): void;
720
739
  }
721
740
 
741
+ /**
742
+ * KRDS ButtonGroup 컴포넌트
743
+ *
744
+ * 입력 필드 안에 버튼을 여러 개 넣을 때 묶는 래퍼입니다 (KRDS `.btn-group`, 예: 내용 삭제 + 비밀번호 보기).
745
+ * KRDS에는 일반 버튼 묶음 스타일이 없으므로 입력 필드 밖에서는 사용하지 않습니다.
746
+ *
747
+ * @example
748
+ * ```vue
749
+ * <KrdsInput id="pw" type="password" icon>
750
+ * <KrdsButtonGroup>
751
+ * <KrdsButton icon pure class="btn-delete-input"><span class="sr-only">내용 삭제</span><KrdsIcon name="ico-delete-fill" /></KrdsButton>
752
+ * <KrdsButton icon><span class="sr-only">입력한 비밀번호 보기</span><KrdsIcon name="ico-pw-visible" /></KrdsButton>
753
+ * </KrdsButtonGroup>
754
+ * </KrdsInput>
755
+ * ```
756
+ */
722
757
  export declare const KrdsButtonGroup: DefineComponent<{}, () => VNode<RendererNode, RendererElement, {
723
758
  [key: string]: any;
724
759
  }>, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>;
@@ -844,10 +879,15 @@ export declare const KrdsCarousel: DefineComponent<ExtractPropTypes<{
844
879
  }>, () => VNode< RendererNode, RendererElement, {
845
880
  [key: string]: any;
846
881
  }>, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
882
+ /** 현재 슬라이드 순서가 바뀔 때 (v-model:active-index) */
847
883
  'update:activeIndex': (value: number) => true;
884
+ /** 슬라이드가 바뀌었을 때 (새 순서) */
848
885
  change: (value: number) => true;
886
+ /** 자동 재생을 시작했을 때 */
849
887
  play: () => true;
888
+ /** 자동 재생을 멈췄을 때 */
850
889
  stop: () => true;
890
+ /** 더 보기 버튼을 클릭했을 때 */
851
891
  'more-click': (event: MouseEvent) => true;
852
892
  }, string, PublicProps, Readonly< ExtractPropTypes<{
853
893
  /** 캐러셀 형태 (기본값: visual) */
@@ -1113,6 +1153,7 @@ export declare const KrdsCheckbox: DefineComponent<ExtractPropTypes<{
1113
1153
  }>, () => VNode< RendererNode, RendererElement, {
1114
1154
  [key: string]: any;
1115
1155
  }>, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
1156
+ /** 체크 상태가 바뀔 때 (v-model) */
1116
1157
  'update:modelValue': (value: boolean) => true;
1117
1158
  }, string, PublicProps, Readonly< ExtractPropTypes<{
1118
1159
  /** 모델 값 */
@@ -1152,8 +1193,8 @@ export declare const KrdsCheckbox: DefineComponent<ExtractPropTypes<{
1152
1193
  disabled: boolean;
1153
1194
  size: "medium" | "large";
1154
1195
  class: string;
1155
- modelValue: boolean;
1156
1196
  id: string;
1197
+ modelValue: boolean;
1157
1198
  chip: boolean;
1158
1199
  }, SlotsType<{
1159
1200
  default?: () => VNode[];
@@ -1210,7 +1251,9 @@ export declare const KrdsCoachMark: DefineComponent<ExtractPropTypes<{
1210
1251
  }>, () => VNode<RendererNode, RendererElement, {
1211
1252
  [key: string]: any;
1212
1253
  }>, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
1254
+ /** 이전·다음 버튼으로 단계가 바뀔 때 (v-model) */
1213
1255
  'update:modelValue': (value: number | null) => true;
1256
+ /** 닫기 버튼으로 닫을 때 */
1214
1257
  close: () => true;
1215
1258
  }, string, PublicProps, Readonly< ExtractPropTypes<{
1216
1259
  /** 코치마크 래퍼에 추가할 클래스 */
@@ -1271,6 +1314,7 @@ export declare interface KrdsCoachMarkProps extends BaseComponentProps {
1271
1314
 
1272
1315
  /**
1273
1316
  * KRDS 컴포넌트 타입
1317
+ * @deprecated 라이브러리에서 쓰이지 않아 다음 breaking 릴리스에서 제거 예정
1274
1318
  */
1275
1319
  export declare type KrdsComponent<Props = object, Slots = object, Emits = object> = Component & {
1276
1320
  __krdsComponent: true;
@@ -1317,9 +1361,9 @@ export declare const KrdsContextualHelp: DefineComponent<ExtractPropTypes<{
1317
1361
  default: string;
1318
1362
  };
1319
1363
  }>> & Readonly<{}>, {
1364
+ position: ContextualHelpPosition;
1320
1365
  tooltipTitle: string;
1321
1366
  helpIcon: boolean;
1322
- position: ContextualHelpPosition;
1323
1367
  }, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>;
1324
1368
 
1325
1369
  /**
@@ -1358,6 +1402,7 @@ export declare const KrdsCriticalAlerts: DefineComponent<ExtractPropTypes<{
1358
1402
  }>, () => VNode<RendererNode, RendererElement, {
1359
1403
  [key: string]: any;
1360
1404
  }>, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
1405
+ /** 공지 링크를 클릭했을 때 */
1361
1406
  'link-click': (event: MouseEvent) => true;
1362
1407
  }, string, PublicProps, Readonly< ExtractPropTypes<{
1363
1408
  /** 알림 타입 */
@@ -1470,6 +1515,11 @@ export declare const KrdsDateInput: DefineComponent<ExtractPropTypes<{
1470
1515
  type: NumberConstructor;
1471
1516
  default: undefined;
1472
1517
  };
1518
+ /** 달력을 body에 렌더 (overflow로 잘리는 컨테이너 안에서 사용. 모달 안에서는 쓰지 않음) */
1519
+ teleport: {
1520
+ type: BooleanConstructor;
1521
+ default: boolean;
1522
+ };
1473
1523
  /** CSS 클래스 */
1474
1524
  class: {
1475
1525
  type: StringConstructor;
@@ -1483,10 +1533,15 @@ export declare const KrdsDateInput: DefineComponent<ExtractPropTypes<{
1483
1533
  }>, () => VNode<RendererNode, RendererElement, {
1484
1534
  [key: string]: any;
1485
1535
  }>, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
1536
+ /** 날짜를 입력하거나 달력에서 고를 때 (v-model) */
1486
1537
  'update:modelValue': (value: string) => true;
1538
+ /** 입력할 때 (네이티브 input) */
1487
1539
  input: (event: Event) => true;
1540
+ /** 값이 확정됐을 때 (네이티브 change) */
1488
1541
  change: (event: Event) => true;
1542
+ /** 초점을 받았을 때 */
1489
1543
  focus: (event: FocusEvent) => true;
1544
+ /** 초점을 잃었을 때 */
1490
1545
  blur: (event: FocusEvent) => true;
1491
1546
  }, string, PublicProps, Readonly< ExtractPropTypes<{
1492
1547
  /** 선택된 날짜 값 */
@@ -1549,6 +1604,11 @@ export declare const KrdsDateInput: DefineComponent<ExtractPropTypes<{
1549
1604
  type: NumberConstructor;
1550
1605
  default: undefined;
1551
1606
  };
1607
+ /** 달력을 body에 렌더 (overflow로 잘리는 컨테이너 안에서 사용. 모달 안에서는 쓰지 않음) */
1608
+ teleport: {
1609
+ type: BooleanConstructor;
1610
+ default: boolean;
1611
+ };
1552
1612
  /** CSS 클래스 */
1553
1613
  class: {
1554
1614
  type: StringConstructor;
@@ -1572,14 +1632,15 @@ export declare const KrdsDateInput: DefineComponent<ExtractPropTypes<{
1572
1632
  disabled: boolean;
1573
1633
  size: Size;
1574
1634
  class: string;
1635
+ id: string;
1575
1636
  modelValue: string;
1576
1637
  placeholder: string;
1577
1638
  autofocus: boolean;
1578
- id: string;
1579
1639
  eventDates: string[];
1580
1640
  holidays: string[];
1581
1641
  initialYear: number;
1582
1642
  initialMonth: number;
1643
+ teleport: boolean;
1583
1644
  }, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>;
1584
1645
 
1585
1646
  /**
@@ -1617,6 +1678,8 @@ export declare interface KrdsDateInputProps extends BaseFormProps {
1617
1678
  initialYear?: number;
1618
1679
  /** 초기 표시 월 (기본: 현재 월) */
1619
1680
  initialMonth?: number;
1681
+ /** 달력을 body에 렌더 (overflow로 잘리는 컨테이너 안에서 사용. 모달 안에서는 쓰지 않음) */
1682
+ teleport?: boolean;
1620
1683
  }
1621
1684
 
1622
1685
  export declare const KrdsDisclosure: DefineComponent<ExtractPropTypes<{
@@ -1633,6 +1696,7 @@ export declare const KrdsDisclosure: DefineComponent<ExtractPropTypes<{
1633
1696
  }>, () => VNode<RendererNode, RendererElement, {
1634
1697
  [key: string]: any;
1635
1698
  }>, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
1699
+ /** 펼침 상태가 바뀔 때 (v-model) */
1636
1700
  'update:modelValue': (value: boolean) => true;
1637
1701
  }, string, PublicProps, Readonly< ExtractPropTypes<{
1638
1702
  /** 디스클로저 제목 */
@@ -1777,16 +1841,27 @@ export declare const KrdsFileUpload: DefineComponent<ExtractPropTypes<{
1777
1841
  }>, () => VNode< RendererNode, RendererElement, {
1778
1842
  [key: string]: any;
1779
1843
  }>, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
1844
+ /** 파일을 추가·삭제해 목록이 바뀔 때 (v-model) */
1780
1845
  'update:modelValue': (files: FileInfo[]) => true;
1846
+ /** 파일을 추가했을 때 */
1781
1847
  'file-added': (file: FileInfo) => true;
1848
+ /** 파일을 삭제했을 때 (파일 id) */
1782
1849
  'file-removed': (fileId: string) => true;
1850
+ /** 추가한 파일이 검사(크기·형식 등)에 실패했을 때 (오류 메시지) */
1783
1851
  'file-error': (file: FileInfo, error: string) => true;
1852
+ /** 보내지 않음 (기존 코드 호환용 선언), 업로드는 사용하는 쪽에서 처리 */
1784
1853
  'upload-start': (file: FileInfo) => true;
1854
+ /** 보내지 않음 (기존 코드 호환용 선언), 업로드는 사용하는 쪽에서 처리 */
1785
1855
  'upload-progress': (file: FileInfo, progress: number) => true;
1856
+ /** 보내지 않음 (기존 코드 호환용 선언), 업로드는 사용하는 쪽에서 처리 */
1786
1857
  'upload-complete': (file: FileInfo) => true;
1858
+ /** 보내지 않음 (기존 코드 호환용 선언), 업로드는 사용하는 쪽에서 처리 */
1787
1859
  'upload-error': (file: FileInfo, error: string) => true;
1860
+ /** 전체 삭제 버튼을 눌렀을 때 */
1788
1861
  'clear-all': () => true;
1862
+ /** 파일의 다운로드 버튼을 눌렀을 때 */
1789
1863
  download: (file: FileInfo) => true;
1864
+ /** 파일의 미리보기 버튼을 눌렀을 때 */
1790
1865
  preview: (file: FileInfo) => true;
1791
1866
  }, string, PublicProps, Readonly< ExtractPropTypes<{
1792
1867
  /** 파일 목록 */
@@ -1915,13 +1990,13 @@ export declare const KrdsFileUpload: DefineComponent<ExtractPropTypes<{
1915
1990
  class: string;
1916
1991
  style: string | Record<string, any>;
1917
1992
  title: string;
1993
+ id: string;
1918
1994
  modelValue: FileInfo[];
1919
1995
  placeholder: string;
1920
- id: string;
1921
1996
  accept: string;
1922
- multiple: boolean;
1923
1997
  maxFiles: number;
1924
1998
  maxFileSize: number;
1999
+ multiple: boolean;
1925
2000
  dragAndDrop: boolean;
1926
2001
  description: string;
1927
2002
  showPreview: boolean;
@@ -1983,6 +2058,152 @@ export declare interface KrdsFileUploadProps extends BaseFormProps {
1983
2058
  showClearAll?: boolean;
1984
2059
  }
1985
2060
 
2061
+ /**
2062
+ * KRDS FloatingButton 컴포넌트
2063
+ *
2064
+ * 화면에서 가장 자주 쓰는 중요한 작업을 화면 오른쪽 아래에 고정해 보여 주는 버튼입니다.
2065
+ * `items`가 없으면 단일형(아이콘 + 레이블), 있으면 확장형(+ 버튼으로 항목을 펼치고 X로 닫음)입니다.
2066
+ *
2067
+ * @example
2068
+ * ```vue
2069
+ * <!-- 단일형 -->
2070
+ * <KrdsFloatingButton label="채팅 상담" icon="ico-faq" @click="openChat" />
2071
+ *
2072
+ * <!-- 아이콘만 -->
2073
+ * <KrdsFloatingButton label="맨 위로" icon="ico-go-top" hide-label @click="scrollToTop" />
2074
+ *
2075
+ * <!-- 확장형 -->
2076
+ * <KrdsFloatingButton
2077
+ * label="상담 메뉴"
2078
+ * :items="[
2079
+ * { label: '전화 상담', icon: 'ico-call', href: 'tel:1555-6365' },
2080
+ * { label: '이메일 문의', icon: 'ico-email', href: 'mailto:krds@nia.or.kr' }
2081
+ * ]"
2082
+ * />
2083
+ * ```
2084
+ */
2085
+ export declare const KrdsFloatingButton: DefineComponent<ExtractPropTypes<{
2086
+ /** 단일형 버튼의 레이블, 확장형은 확장 버튼의 이름 (화면에는 숨김) */
2087
+ label: {
2088
+ type: StringConstructor;
2089
+ required: true;
2090
+ };
2091
+ /** 단일형 버튼의 아이콘 클래스 */
2092
+ icon: {
2093
+ type: StringConstructor;
2094
+ default: string;
2095
+ };
2096
+ /** 단일형 버튼의 링크 주소 */
2097
+ href: {
2098
+ type: StringConstructor;
2099
+ default: undefined;
2100
+ };
2101
+ /** 단일형 링크를 새 창으로 열기 ('새 창 열림' 안내 포함) */
2102
+ external: {
2103
+ type: BooleanConstructor;
2104
+ default: boolean;
2105
+ };
2106
+ /** 단일형 레이블을 화면에서 숨김 (아이콘만 표시, 화면낭독기는 읽음) */
2107
+ hideLabel: {
2108
+ type: BooleanConstructor;
2109
+ default: boolean;
2110
+ };
2111
+ /** 확장형 항목 (지정하면 확장형, 3개 이하 권장) */
2112
+ items: {
2113
+ type: PropType<KrdsFloatingButtonItem[]>;
2114
+ default: undefined;
2115
+ };
2116
+ }>, () => VNode< RendererNode, RendererElement, {
2117
+ [key: string]: any;
2118
+ }>, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
2119
+ /** 단일형 버튼 클릭 */
2120
+ click: (event: MouseEvent) => true;
2121
+ /** 확장형 항목 선택 (링크 항목은 event.preventDefault()로 라우터 이동 가능) */
2122
+ select: (item: KrdsFloatingButtonItem, index: number, event: MouseEvent) => true;
2123
+ }, string, PublicProps, Readonly< ExtractPropTypes<{
2124
+ /** 단일형 버튼의 레이블, 확장형은 확장 버튼의 이름 (화면에는 숨김) */
2125
+ label: {
2126
+ type: StringConstructor;
2127
+ required: true;
2128
+ };
2129
+ /** 단일형 버튼의 아이콘 클래스 */
2130
+ icon: {
2131
+ type: StringConstructor;
2132
+ default: string;
2133
+ };
2134
+ /** 단일형 버튼의 링크 주소 */
2135
+ href: {
2136
+ type: StringConstructor;
2137
+ default: undefined;
2138
+ };
2139
+ /** 단일형 링크를 새 창으로 열기 ('새 창 열림' 안내 포함) */
2140
+ external: {
2141
+ type: BooleanConstructor;
2142
+ default: boolean;
2143
+ };
2144
+ /** 단일형 레이블을 화면에서 숨김 (아이콘만 표시, 화면낭독기는 읽음) */
2145
+ hideLabel: {
2146
+ type: BooleanConstructor;
2147
+ default: boolean;
2148
+ };
2149
+ /** 확장형 항목 (지정하면 확장형, 3개 이하 권장) */
2150
+ items: {
2151
+ type: PropType<KrdsFloatingButtonItem[]>;
2152
+ default: undefined;
2153
+ };
2154
+ }>> & Readonly<{
2155
+ onClick?: ((event: MouseEvent) => any) | undefined;
2156
+ onSelect?: ((item: KrdsFloatingButtonItem, index: number, event: MouseEvent) => any) | undefined;
2157
+ }>, {
2158
+ icon: string;
2159
+ href: string;
2160
+ external: boolean;
2161
+ hideLabel: boolean;
2162
+ items: KrdsFloatingButtonItem[];
2163
+ }, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>;
2164
+
2165
+ /**
2166
+ * KRDS FloatingButton 컴포넌트 이벤트
2167
+ */
2168
+ export declare interface KrdsFloatingButtonEmits {
2169
+ /** 단일형 버튼 클릭 */
2170
+ (e: 'click', event: MouseEvent): void;
2171
+ /** 확장형 항목 선택 (링크 항목은 event.preventDefault()로 라우터 이동 가능) */
2172
+ (e: 'select', item: KrdsFloatingButtonItem, index: number, event: MouseEvent): void;
2173
+ }
2174
+
2175
+ /**
2176
+ * 플로팅 버튼 항목 (단일형 버튼·확장형 항목 공통)
2177
+ */
2178
+ export declare interface KrdsFloatingButtonItem {
2179
+ /** 버튼 이름 (레이블) */
2180
+ label: string;
2181
+ /** 아이콘 클래스 (예: 'ico-faq') */
2182
+ icon: string;
2183
+ /** 링크 주소 (없으면 버튼으로 렌더링) */
2184
+ href?: string;
2185
+ /** 링크를 새 창으로 열기 ('새 창 열림' 안내 포함) */
2186
+ external?: boolean;
2187
+ }
2188
+
2189
+ /**
2190
+ * KRDS FloatingButton 컴포넌트 속성
2191
+ */
2192
+ export declare interface KrdsFloatingButtonProps extends BaseComponentProps {
2193
+ /** 단일형 버튼의 레이블, 확장형은 확장 버튼의 이름 (화면에는 숨김) */
2194
+ label: string;
2195
+ /** 단일형 버튼의 아이콘 클래스 */
2196
+ icon?: string;
2197
+ /** 단일형 버튼의 링크 주소 */
2198
+ href?: string;
2199
+ /** 단일형 링크를 새 창으로 열기 ('새 창 열림' 안내 포함) */
2200
+ external?: boolean;
2201
+ /** 단일형 레이블을 화면에서 숨김 (아이콘만 표시, 화면낭독기는 읽음) */
2202
+ hideLabel?: boolean;
2203
+ /** 확장형 항목 (지정하면 확장형, 3개 이하 권장) */
2204
+ items?: KrdsFloatingButtonItem[];
2205
+ }
2206
+
1986
2207
  export declare const KrdsFooter: DefineComponent<ExtractPropTypes<{
1987
2208
  /** Footer ID */
1988
2209
  id: {
@@ -2089,6 +2310,7 @@ export declare const KrdsFormHint: DefineComponent<ExtractPropTypes<{
2089
2310
  }>, () => VNode<RendererNode, RendererElement, {
2090
2311
  [key: string]: any;
2091
2312
  }>, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
2313
+ /** 도움말 문구를 클릭했을 때 */
2092
2314
  click: (event: MouseEvent) => true;
2093
2315
  }, string, PublicProps, Readonly< ExtractPropTypes<{
2094
2316
  /** 힌트 타입 */
@@ -2159,6 +2381,7 @@ export declare const KrdsFormLabel: DefineComponent<ExtractPropTypes<{
2159
2381
  }>, () => VNode<RendererNode, RendererElement, {
2160
2382
  [key: string]: any;
2161
2383
  }>, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
2384
+ /** 레이블을 클릭했을 때 */
2162
2385
  click: (event: MouseEvent) => true;
2163
2386
  }, string, PublicProps, Readonly< ExtractPropTypes<{
2164
2387
  /** label의 for 속성 */
@@ -2303,6 +2526,7 @@ export declare const KrdsIdentifier: DefineComponent<ExtractPropTypes<{
2303
2526
  }>, () => VNode<RendererNode, RendererElement, {
2304
2527
  [key: string]: any;
2305
2528
  }>, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
2529
+ /** 운영기관 식별자를 클릭했을 때 */
2306
2530
  click: (event: MouseEvent) => true;
2307
2531
  }, string, PublicProps, Readonly< ExtractPropTypes<{
2308
2532
  /** CSS 클래스 */
@@ -2375,6 +2599,7 @@ export declare const KrdsInPageNavigation: DefineComponent<ExtractPropTypes<{
2375
2599
  }>, () => VNode< RendererNode, RendererElement, {
2376
2600
  [key: string]: any;
2377
2601
  }>, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
2602
+ /** 탐색 항목을 클릭하거나 키보드로 선택했을 때 */
2378
2603
  itemClick: (item: NavigationItem, event: MouseEvent | KeyboardEvent) => true;
2379
2604
  }, string, PublicProps, Readonly< ExtractPropTypes<{
2380
2605
  /** 네비게이션 제목 */
@@ -2555,12 +2780,19 @@ export declare const KrdsInput: DefineComponent<ExtractPropTypes<{
2555
2780
  }>, () => VNode<RendererNode, RendererElement, {
2556
2781
  [key: string]: any;
2557
2782
  }>, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
2783
+ /** 입력값이 바뀔 때 (v-model) */
2558
2784
  'update:modelValue': (value: string | number) => true;
2785
+ /** 입력할 때 (네이티브 input) */
2559
2786
  input: (event: Event) => true;
2787
+ /** 값이 확정됐을 때 (네이티브 change) */
2560
2788
  change: (event: Event) => true;
2789
+ /** 초점을 받았을 때 */
2561
2790
  focus: (event: FocusEvent) => true;
2791
+ /** 초점을 잃었을 때 */
2562
2792
  blur: (event: FocusEvent) => true;
2793
+ /** 키를 눌렀을 때 */
2563
2794
  keydown: (event: KeyboardEvent) => true;
2795
+ /** 키를 뗐을 때 */
2564
2796
  keyup: (event: KeyboardEvent) => true;
2565
2797
  }, string, PublicProps, Readonly< ExtractPropTypes<{
2566
2798
  /** 입력값 */
@@ -2680,6 +2912,7 @@ export declare const KrdsInput: DefineComponent<ExtractPropTypes<{
2680
2912
  size: Size;
2681
2913
  icon: boolean;
2682
2914
  class: string;
2915
+ id: string;
2683
2916
  modelValue: string | number;
2684
2917
  placeholder: string;
2685
2918
  maxlength: number;
@@ -2691,7 +2924,6 @@ export declare const KrdsInput: DefineComponent<ExtractPropTypes<{
2691
2924
  autofocus: boolean;
2692
2925
  state: "success" | "error" | "default" | "information";
2693
2926
  loading: boolean;
2694
- id: string;
2695
2927
  }, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>;
2696
2928
 
2697
2929
  /**
@@ -2767,7 +2999,9 @@ export declare const KrdsLanguageSwitcher: DefineComponent<ExtractPropTypes<{
2767
2999
  }>, () => VNode<RendererNode, RendererElement, {
2768
3000
  [key: string]: any;
2769
3001
  }>, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
3002
+ /** 언어를 골랐을 때 (언어 코드, v-model) */
2770
3003
  'update:modelValue': (value: string) => true;
3004
+ /** 언어 목록이 닫힐 때 */
2771
3005
  close: () => true;
2772
3006
  }, string, PublicProps, Readonly< ExtractPropTypes<{
2773
3007
  /** 언어 목록 */
@@ -2840,9 +3074,12 @@ export declare const KrdsLayout: DefineComponent<ExtractPropTypes<{
2840
3074
  }>, () => VNode<RendererNode, RendererElement, {
2841
3075
  [key: string]: any;
2842
3076
  }>, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
2843
- resize: (_size: LayoutSize) => true;
2844
- scroll: (_details: ScrollDetails) => true;
2845
- 'scroll-height': (_height: number) => true;
3077
+ /** 창 크기가 바뀔 때 (레이아웃 크기) */
3078
+ resize: (size: LayoutSize) => true;
3079
+ /** 스크롤할 때 (위치·방향) */
3080
+ scroll: (details: ScrollDetails) => true;
3081
+ /** 문서 스크롤 높이가 바뀔 때 */
3082
+ 'scroll-height': (height: number) => true;
2846
3083
  }, string, PublicProps, Readonly< ExtractPropTypes<{
2847
3084
  /** 레이아웃 ID */
2848
3085
  id: {
@@ -2860,9 +3097,9 @@ export declare const KrdsLayout: DefineComponent<ExtractPropTypes<{
2860
3097
  default: boolean;
2861
3098
  };
2862
3099
  }>> & Readonly<{
2863
- onResize?: ((_size: LayoutSize) => any) | undefined;
2864
- onScroll?: ((_details: ScrollDetails) => any) | undefined;
2865
- "onScroll-height"?: ((_height: number) => any) | undefined;
3100
+ onResize?: ((size: LayoutSize) => any) | undefined;
3101
+ onScroll?: ((details: ScrollDetails) => any) | undefined;
3102
+ "onScroll-height"?: ((height: number) => any) | undefined;
2866
3103
  }>, {
2867
3104
  class: string;
2868
3105
  id: string;
@@ -2932,6 +3169,7 @@ export declare const KrdsLink: DefineComponent<ExtractPropTypes<{
2932
3169
  }>, () => VNode<RendererNode, RendererElement, {
2933
3170
  [key: string]: any;
2934
3171
  }>, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
3172
+ /** 링크를 클릭했을 때 */
2935
3173
  click: (event: MouseEvent) => true;
2936
3174
  }, string, PublicProps, Readonly< ExtractPropTypes<{
2937
3175
  /** 링크 URL */
@@ -3058,8 +3296,11 @@ export declare const KrdsMainMenu: DefineComponent<ExtractPropTypes<{
3058
3296
  }>, () => VNode< RendererNode, RendererElement, {
3059
3297
  [key: string]: any;
3060
3298
  }>, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
3299
+ /** 모바일 메뉴가 열리거나 닫힐 때 (v-model:open) */
3061
3300
  'update:open': (value: boolean) => true;
3301
+ /** 1차 메뉴를 펼치거나 접을 때 (순서, 펼침 여부) */
3062
3302
  'menu-toggle': (index: number, expanded: boolean) => true;
3303
+ /** 메뉴 항목을 클릭했을 때 */
3063
3304
  'item-click': (item: MainMenuAnyItem, mouseEvent: MouseEvent) => true;
3064
3305
  }, string, PublicProps, Readonly< ExtractPropTypes<{
3065
3306
  /** 메뉴 아이템 배열 */
@@ -3164,6 +3405,7 @@ export declare const KrdsMasthead: DefineComponent<ExtractPropTypes<{
3164
3405
  }>, () => VNode<RendererNode, RendererElement, {
3165
3406
  [key: string]: any;
3166
3407
  }>, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
3408
+ /** 공식 배너를 클릭했을 때 */
3167
3409
  click: (event: MouseEvent) => true;
3168
3410
  }, string, PublicProps, Readonly< ExtractPropTypes<{
3169
3411
  /** CSS 클래스 */
@@ -3228,6 +3470,7 @@ export declare const KrdsModal: DefineComponent<ExtractPropTypes<{
3228
3470
  }>, () => VNode<RendererNode, RendererElement, {
3229
3471
  [key: string]: any;
3230
3472
  }> | null, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
3473
+ /** 모달이 열리거나 닫힐 때 (v-model) */
3231
3474
  'update:modelValue': (value: boolean) => true;
3232
3475
  }, string, PublicProps, Readonly< ExtractPropTypes<{
3233
3476
  /** 모달 표시 여부 (v-model) */
@@ -3327,6 +3570,7 @@ export declare const KrdsPagination: DefineComponent<ExtractPropTypes<{
3327
3570
  }>, () => VNode<RendererNode, RendererElement, {
3328
3571
  [key: string]: any;
3329
3572
  }>, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
3573
+ /** 페이지를 바꿀 때 (페이지 번호, v-model) */
3330
3574
  'update:modelValue': (value: number) => true;
3331
3575
  }, string, PublicProps, Readonly< ExtractPropTypes<{
3332
3576
  /** 현재 페이지 번호 (v-model) */
@@ -3362,9 +3606,9 @@ export declare const KrdsPagination: DefineComponent<ExtractPropTypes<{
3362
3606
  }>> & Readonly<{
3363
3607
  "onUpdate:modelValue"?: ((value: number) => any) | undefined;
3364
3608
  }>, {
3609
+ id: string;
3365
3610
  modelValue: number;
3366
3611
  min: number;
3367
- id: string;
3368
3612
  ariaLabel: string;
3369
3613
  pageRange: number;
3370
3614
  }, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>;
@@ -3401,9 +3645,20 @@ export declare const KrdsPanel: DefineComponent<ExtractPropTypes<{
3401
3645
  type: BooleanConstructor;
3402
3646
  default: boolean;
3403
3647
  };
3648
+ /** 헤더 상단 영역 선택자 (기본값: '#krds-masthead', KrdsInPageNavigation과 같음) */
3649
+ headerTopSelector: {
3650
+ type: StringConstructor;
3651
+ default: string;
3652
+ };
3653
+ /** 헤더 내부 영역 선택자 (기본값: '#krds-header .header-in', KrdsInPageNavigation과 같음) */
3654
+ headerInnerSelector: {
3655
+ type: StringConstructor;
3656
+ default: string;
3657
+ };
3404
3658
  }>, () => VNode<RendererNode, RendererElement, {
3405
3659
  [key: string]: any;
3406
3660
  }>, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
3661
+ /** 도움 패널을 펼치거나 접을 때 (v-model) */
3407
3662
  'update:modelValue': (value: boolean) => true;
3408
3663
  }, string, PublicProps, Readonly< ExtractPropTypes<{
3409
3664
  /** 도움말 패널 펼침 상태 (v-model) */
@@ -3411,10 +3666,22 @@ export declare const KrdsPanel: DefineComponent<ExtractPropTypes<{
3411
3666
  type: BooleanConstructor;
3412
3667
  default: boolean;
3413
3668
  };
3669
+ /** 헤더 상단 영역 선택자 (기본값: '#krds-masthead', KrdsInPageNavigation과 같음) */
3670
+ headerTopSelector: {
3671
+ type: StringConstructor;
3672
+ default: string;
3673
+ };
3674
+ /** 헤더 내부 영역 선택자 (기본값: '#krds-header .header-in', KrdsInPageNavigation과 같음) */
3675
+ headerInnerSelector: {
3676
+ type: StringConstructor;
3677
+ default: string;
3678
+ };
3414
3679
  }>> & Readonly<{
3415
3680
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
3416
3681
  }>, {
3417
3682
  modelValue: boolean;
3683
+ headerTopSelector: string;
3684
+ headerInnerSelector: string;
3418
3685
  }, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>;
3419
3686
 
3420
3687
  /**
@@ -3430,6 +3697,10 @@ export declare interface KrdsPanelEmits {
3430
3697
  export declare interface KrdsPanelProps {
3431
3698
  /** 도움말 패널 펼침 상태 (v-model) */
3432
3699
  modelValue?: boolean;
3700
+ /** 헤더 상단 영역 선택자 (기본값: '#krds-masthead') */
3701
+ headerTopSelector?: string;
3702
+ /** 헤더 내부 영역 선택자 (기본값: '#krds-header .header-in') */
3703
+ headerInnerSelector?: string;
3433
3704
  }
3434
3705
 
3435
3706
  export declare const KrdsRadio: DefineComponent<ExtractPropTypes<{
@@ -3477,6 +3748,7 @@ export declare const KrdsRadio: DefineComponent<ExtractPropTypes<{
3477
3748
  }>, () => VNode< RendererNode, RendererElement, {
3478
3749
  [key: string]: any;
3479
3750
  }>, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
3751
+ /** 이 항목을 선택할 때 (항목 value, v-model) */
3480
3752
  'update:modelValue': (value: string | number | boolean) => true;
3481
3753
  }, string, PublicProps, Readonly< ExtractPropTypes<{
3482
3754
  /** 모델 값 */
@@ -3527,8 +3799,8 @@ export declare const KrdsRadio: DefineComponent<ExtractPropTypes<{
3527
3799
  disabled: boolean;
3528
3800
  size: "medium" | "large";
3529
3801
  class: string;
3530
- modelValue: string | number | boolean;
3531
3802
  id: string;
3803
+ modelValue: string | number | boolean;
3532
3804
  chip: boolean;
3533
3805
  }, SlotsType<{
3534
3806
  default?: () => VNode[];
@@ -3558,24 +3830,51 @@ export declare interface KrdsRadioProps extends BaseFormProps {
3558
3830
  chip?: boolean;
3559
3831
  }
3560
3832
 
3561
- export declare const KrdsResize: DefineComponent<{}, () => VNode<RendererNode, RendererElement, {
3833
+ export declare const KrdsResize: DefineComponent<ExtractPropTypes<{
3834
+ /** 선택한 화면 크기 (v-model). 지정하면 그 크기로 화면을 확대·축소한다 */
3835
+ modelValue: {
3836
+ type: PropType<KrdsResizeScale>;
3837
+ default: undefined;
3838
+ };
3839
+ }>, () => VNode<RendererNode, RendererElement, {
3562
3840
  [key: string]: any;
3563
3841
  }>, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
3564
- 'update:modelValue': (value: string) => true;
3842
+ /** 화면 크기를 골랐을 때 (v-model) */
3843
+ 'update:modelValue': (value: KrdsResizeScale) => true;
3844
+ /** 크기 목록이 닫힐 때 */
3565
3845
  close: () => true;
3566
- }, string, PublicProps, Readonly<{}> & Readonly<{
3846
+ }, string, PublicProps, Readonly< ExtractPropTypes<{
3847
+ /** 선택한 화면 크기 (v-model). 지정하면 그 크기로 화면을 확대·축소한다 */
3848
+ modelValue: {
3849
+ type: PropType<KrdsResizeScale>;
3850
+ default: undefined;
3851
+ };
3852
+ }>> & Readonly<{
3567
3853
  onClose?: (() => any) | undefined;
3568
- "onUpdate:modelValue"?: ((value: string) => any) | undefined;
3569
- }>, {}, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>;
3854
+ "onUpdate:modelValue"?: ((value: KrdsResizeScale) => any) | undefined;
3855
+ }>, {
3856
+ modelValue: KrdsResizeScale;
3857
+ }, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>;
3570
3858
 
3571
3859
  /**
3572
3860
  * KRDS Resize 컴포넌트 이벤트
3573
3861
  */
3574
3862
  export declare interface KrdsResizeEmits {
3575
- (e: 'update:modelValue', value: string): void;
3863
+ (e: 'update:modelValue', value: KrdsResizeScale): void;
3576
3864
  (e: 'close'): void;
3577
3865
  }
3578
3866
 
3867
+ /**
3868
+ * KRDS Resize 컴포넌트 속성
3869
+ */
3870
+ export declare interface KrdsResizeProps {
3871
+ /** 선택한 화면 크기 (v-model). 지정하면 그 크기로 화면을 확대·축소한다 */
3872
+ modelValue?: KrdsResizeScale;
3873
+ }
3874
+
3875
+ /** 화면 크기 (작게 sm · 보통 md · 조금 크게 lg · 크게 xlg · 가장 크게 xxlg) */
3876
+ export declare type KrdsResizeScale = 'sm' | 'md' | 'lg' | 'xlg' | 'xxlg';
3877
+
3579
3878
  export declare const KrdsSelect: DefineComponent<ExtractPropTypes<{
3580
3879
  /** 선택된 값 */
3581
3880
  modelValue: {
@@ -3640,8 +3939,11 @@ export declare const KrdsSelect: DefineComponent<ExtractPropTypes<{
3640
3939
  }>, () => VNode<RendererNode, RendererElement, {
3641
3940
  [key: string]: any;
3642
3941
  }>, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
3942
+ /** 선택한 값이 바뀔 때 (v-model) */
3643
3943
  'update:modelValue': (value: string | number | null) => true;
3944
+ /** 초점을 받았을 때 */
3644
3945
  focus: (event: FocusEvent) => true;
3946
+ /** 초점을 잃었을 때 */
3645
3947
  blur: (event: FocusEvent) => true;
3646
3948
  }, string, PublicProps, Readonly< ExtractPropTypes<{
3647
3949
  /** 선택된 값 */
@@ -3716,10 +4018,10 @@ export declare const KrdsSelect: DefineComponent<ExtractPropTypes<{
3716
4018
  class: string;
3717
4019
  sort: boolean;
3718
4020
  title: string;
4021
+ id: string;
3719
4022
  modelValue: string | number | null;
3720
4023
  placeholder: string;
3721
4024
  state: "success" | "error" | "default" | "information";
3722
- id: string;
3723
4025
  options: SelectOption[];
3724
4026
  }, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>;
3725
4027
 
@@ -3760,6 +4062,7 @@ export declare const KrdsSideNavigation: DefineComponent<{
3760
4062
  }, () => VNode< RendererNode, RendererElement, {
3761
4063
  [key: string]: any;
3762
4064
  }>, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
4065
+ /** 메뉴를 펼치거나 접어 항목 상태가 바뀔 때 (v-model) */
3763
4066
  'update:modelValue': (value: SideNavItem[]) => true;
3764
4067
  }, string, PublicProps, Readonly<{
3765
4068
  title: string;
@@ -3796,9 +4099,16 @@ export declare interface KrdsSideNavigationProps {
3796
4099
  *
3797
4100
  * @example
3798
4101
  * ```vue
4102
+ * <!-- 단일 링크 -->
3799
4103
  * <KrdsSkipLink href="#main-content">본문 바로가기</KrdsSkipLink>
3800
- * <KrdsSkipLink href="#breadcrumb">본문 바로가기</KrdsSkipLink>
3801
- * <KrdsSkipLink href="#gnb">메인메뉴 바로가기</KrdsSkipLink>
4104
+ *
4105
+ * <!-- 여러 링크: 컴포넌트를 나란히 두면 #krds-skip-link가 중복되므로 links 사용 -->
4106
+ * <KrdsSkipLink
4107
+ * :links="[
4108
+ * { href: '#main-content', label: '본문 바로가기' },
4109
+ * { href: '#gnb', label: '메인메뉴 바로가기' }
4110
+ * ]"
4111
+ * />
3802
4112
  * ```
3803
4113
  */
3804
4114
  export declare const KrdsSkipLink: DefineComponent<ExtractPropTypes<{
@@ -3808,9 +4118,22 @@ export declare const KrdsSkipLink: DefineComponent<ExtractPropTypes<{
3808
4118
  */
3809
4119
  href: {
3810
4120
  type: StringConstructor;
3811
- required: true;
4121
+ default: undefined;
3812
4122
  validator: (value: string) => boolean;
3813
4123
  };
4124
+ /**
4125
+ * 여러 건너뛰기 링크 (하나의 래퍼 안에 렌더링, 지정 시 href·기본 슬롯 대신 사용)
4126
+ */
4127
+ links: {
4128
+ type: PropType<{
4129
+ href: string;
4130
+ label: string;
4131
+ }[]>;
4132
+ default: undefined;
4133
+ validator: (value: {
4134
+ href: string;
4135
+ }[]) => boolean;
4136
+ };
3814
4137
  /**
3815
4138
  * 추가 CSS 클래스
3816
4139
  */
@@ -3832,9 +4155,22 @@ export declare const KrdsSkipLink: DefineComponent<ExtractPropTypes<{
3832
4155
  */
3833
4156
  href: {
3834
4157
  type: StringConstructor;
3835
- required: true;
4158
+ default: undefined;
3836
4159
  validator: (value: string) => boolean;
3837
4160
  };
4161
+ /**
4162
+ * 여러 건너뛰기 링크 (하나의 래퍼 안에 렌더링, 지정 시 href·기본 슬롯 대신 사용)
4163
+ */
4164
+ links: {
4165
+ type: PropType<{
4166
+ href: string;
4167
+ label: string;
4168
+ }[]>;
4169
+ default: undefined;
4170
+ validator: (value: {
4171
+ href: string;
4172
+ }[]) => boolean;
4173
+ };
3838
4174
  /**
3839
4175
  * 추가 CSS 클래스
3840
4176
  */
@@ -3851,15 +4187,25 @@ export declare const KrdsSkipLink: DefineComponent<ExtractPropTypes<{
3851
4187
  };
3852
4188
  }>> & Readonly<{}>, {
3853
4189
  class: string | unknown[] | Record<string, any>;
4190
+ href: string;
3854
4191
  id: string;
4192
+ links: {
4193
+ href: string;
4194
+ label: string;
4195
+ }[];
3855
4196
  }, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>;
3856
4197
 
3857
4198
  /**
3858
4199
  * KRDS SkipLink 컴포넌트 속성
3859
4200
  */
3860
4201
  export declare interface KrdsSkipLinkProps extends BaseComponentProps {
3861
- /** 건너뛸 대상 요소의 ID */
3862
- href: string;
4202
+ /** 건너뛸 대상 요소의 ID (단일 링크, 기본 슬롯이 링크 텍스트) */
4203
+ href?: string;
4204
+ /** 여러 건너뛰기 링크 (하나의 래퍼 안에 렌더링, 지정 시 href·기본 슬롯 대신 사용) */
4205
+ links?: {
4206
+ href: string;
4207
+ label: string;
4208
+ }[];
3863
4209
  }
3864
4210
 
3865
4211
  export declare const KrdsSpinner: DefineComponent<ExtractPropTypes<{
@@ -3889,7 +4235,7 @@ export declare const KrdsStep: DefineComponent<ExtractPropTypes<{
3889
4235
  type: StringConstructor;
3890
4236
  required: true;
3891
4237
  };
3892
- /** 단계 상태 강제 설정 (선택적) */
4238
+ /** 단계 상태 (지정하지 않으면 KrdsStepIndicator가 순서에 따라 정함) */
3893
4239
  status: {
3894
4240
  type: () => "done" | "active" | "pending";
3895
4241
  default: undefined;
@@ -3902,6 +4248,7 @@ export declare const KrdsStep: DefineComponent<ExtractPropTypes<{
3902
4248
  }>, () => VNode<RendererNode, RendererElement, {
3903
4249
  [key: string]: any;
3904
4250
  }>, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
4251
+ /** 단계를 클릭했을 때 (단계 번호) */
3905
4252
  click: (event: MouseEvent, step: string | number) => true;
3906
4253
  }, string, PublicProps, Readonly< ExtractPropTypes<{
3907
4254
  /** 단계 번호 */
@@ -3914,7 +4261,7 @@ export declare const KrdsStep: DefineComponent<ExtractPropTypes<{
3914
4261
  type: StringConstructor;
3915
4262
  required: true;
3916
4263
  };
3917
- /** 단계 상태 강제 설정 (선택적) */
4264
+ /** 단계 상태 (지정하지 않으면 KrdsStepIndicator가 순서에 따라 정함) */
3918
4265
  status: {
3919
4266
  type: () => "done" | "active" | "pending";
3920
4267
  default: undefined;
@@ -3938,8 +4285,14 @@ export declare interface KrdsStepEmits {
3938
4285
  (e: 'click', event: MouseEvent, step: string | number): void;
3939
4286
  }
3940
4287
 
4288
+ /**
4289
+ * KRDS StepIndicator 컴포넌트
4290
+ *
4291
+ * 진행 상태를 보여 주기만 하는 컴포넌트입니다 (KRDS 원본과 같이 단계를 눌러 이동하지 않음).
4292
+ * 단계 이동은 이전/다음 버튼 등에서 `model-value`를 바꿔 반영합니다.
4293
+ */
3941
4294
  export declare const KrdsStepIndicator: DefineComponent<ExtractPropTypes<{
3942
- /** 현재 활성 단계 인덱스 (0부터 시작) - v-model */
4295
+ /** 현재 단계 인덱스 (0부터 시작). 앞 단계는 완료, 뒤 단계는 대기로 표시 */
3943
4296
  modelValue: {
3944
4297
  type: NumberConstructor;
3945
4298
  default: number;
@@ -3952,9 +4305,13 @@ export declare const KrdsStepIndicator: DefineComponent<ExtractPropTypes<{
3952
4305
  }>, () => VNode<RendererNode, RendererElement, {
3953
4306
  [key: string]: any;
3954
4307
  }>, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
4308
+ /**
4309
+ * 보내지 않음: 단계 표시기는 진행 상태만 보여 주므로 v-model 값이 바뀌지 않습니다 (기존 코드 호환용, 다음 주요 버전에서 제거)
4310
+ * @deprecated
4311
+ */
3955
4312
  'update:modelValue': (value: number) => true;
3956
4313
  }, string, PublicProps, Readonly< ExtractPropTypes<{
3957
- /** 현재 활성 단계 인덱스 (0부터 시작) - v-model */
4314
+ /** 현재 단계 인덱스 (0부터 시작). 앞 단계는 완료, 뒤 단계는 대기로 표시 */
3958
4315
  modelValue: {
3959
4316
  type: NumberConstructor;
3960
4317
  default: number;
@@ -3973,6 +4330,7 @@ export declare const KrdsStepIndicator: DefineComponent<ExtractPropTypes<{
3973
4330
 
3974
4331
  /**
3975
4332
  * KRDS StepIndicator 컴포넌트 이벤트
4333
+ * @deprecated 단계 표시기는 진행 상태만 보여 주므로 update:modelValue를 보내지 않습니다. 다음 주요 버전에서 제거합니다.
3976
4334
  */
3977
4335
  export declare interface KrdsStepIndicatorEmits {
3978
4336
  (e: 'update:modelValue', value: number): void;
@@ -3982,7 +4340,7 @@ export declare interface KrdsStepIndicatorEmits {
3982
4340
  * KRDS StepIndicator 컴포넌트 속성
3983
4341
  */
3984
4342
  export declare interface KrdsStepIndicatorProps extends BaseComponentProps {
3985
- /** 현재 활성 단계 인덱스 (0부터 시작) - v-model */
4343
+ /** 현재 단계 인덱스 (0부터 시작). 앞 단계는 완료, 뒤 단계는 대기로 표시 */
3986
4344
  modelValue?: number;
3987
4345
  }
3988
4346
 
@@ -3994,7 +4352,7 @@ export declare interface KrdsStepProps extends BaseComponentProps {
3994
4352
  step: string | number;
3995
4353
  /** 단계 제목 */
3996
4354
  title: string;
3997
- /** 단계 상태 강제 설정 (선택적) */
4355
+ /** 단계 상태 (지정하지 않으면 KrdsStepIndicator가 순서에 따라 정함) */
3998
4356
  status?: 'done' | 'active' | 'pending';
3999
4357
  }
4000
4358
 
@@ -4065,6 +4423,7 @@ export declare const KrdsTable: DefineComponent<ExtractPropTypes<{
4065
4423
  }>, () => VNode< RendererNode, RendererElement, {
4066
4424
  [key: string]: any;
4067
4425
  }>, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
4426
+ /** 행을 클릭했을 때 (행, 순서) */
4068
4427
  'row-click': (row: TableRow, index: number) => true;
4069
4428
  }, string, PublicProps, Readonly< ExtractPropTypes<{
4070
4429
  /** 테이블 캡션 */
@@ -4149,7 +4508,9 @@ export declare const KrdsTabs: DefineComponent<ExtractPropTypes<{
4149
4508
  }>, () => VNode<RendererNode, RendererElement, {
4150
4509
  [key: string]: any;
4151
4510
  }>, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
4511
+ /** 선택한 탭 id가 바뀔 때 (v-model) */
4152
4512
  'update:modelValue': (id: string) => true;
4513
+ /** 탭을 바꿨을 때 (탭 id) */
4153
4514
  change: (id: string) => true;
4154
4515
  }, string, PublicProps, Readonly< ExtractPropTypes<{
4155
4516
  /** 탭 아이템 목록 */
@@ -4251,6 +4612,7 @@ export declare const KrdsTag: DefineComponent<ExtractPropTypes<{
4251
4612
  }>, () => VNode<RendererNode, RendererElement, {
4252
4613
  [key: string]: any;
4253
4614
  }>, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
4615
+ /** 삭제 버튼을 클릭했을 때 */
4254
4616
  remove: (event: MouseEvent) => true;
4255
4617
  }, string, PublicProps, Readonly< ExtractPropTypes<{
4256
4618
  /** 링크 태그 여부 */
@@ -4435,12 +4797,19 @@ export declare const KrdsTextarea: DefineComponent<ExtractPropTypes<{
4435
4797
  }>, () => VNode<RendererNode, RendererElement, {
4436
4798
  [key: string]: any;
4437
4799
  }>, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
4800
+ /** 입력값이 바뀔 때 (v-model) */
4438
4801
  'update:modelValue': (value: string) => true;
4802
+ /** 입력할 때 (네이티브 input) */
4439
4803
  input: (event: Event) => true;
4804
+ /** 값이 확정됐을 때 (네이티브 change) */
4440
4805
  change: (event: Event) => true;
4806
+ /** 초점을 받았을 때 */
4441
4807
  focus: (event: FocusEvent) => true;
4808
+ /** 초점을 잃었을 때 */
4442
4809
  blur: (event: FocusEvent) => true;
4810
+ /** 키를 눌렀을 때 */
4443
4811
  keydown: (event: KeyboardEvent) => true;
4812
+ /** 키를 뗐을 때 */
4444
4813
  keyup: (event: KeyboardEvent) => true;
4445
4814
  }, string, PublicProps, Readonly< ExtractPropTypes<{
4446
4815
  /** 입력값 */
@@ -4539,12 +4908,12 @@ export declare const KrdsTextarea: DefineComponent<ExtractPropTypes<{
4539
4908
  size: Size;
4540
4909
  class: string;
4541
4910
  resize: "horizontal" | "vertical" | "none" | "both";
4911
+ id: string;
4542
4912
  modelValue: string;
4543
4913
  placeholder: string;
4544
4914
  maxlength: number;
4545
4915
  minlength: number;
4546
4916
  autofocus: boolean;
4547
- id: string;
4548
4917
  rows: number;
4549
4918
  cols: number;
4550
4919
  showCount: boolean;
@@ -4680,7 +5049,9 @@ export declare const KrdsToggleSwitch: DefineComponent<ExtractPropTypes<{
4680
5049
  }>, () => VNode<RendererNode, RendererElement, {
4681
5050
  [key: string]: any;
4682
5051
  }>, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
5052
+ /** 켜짐 상태가 바뀔 때 (v-model) */
4683
5053
  'update:modelValue': (value: boolean) => true;
5054
+ /** 켜거나 껐을 때 */
4684
5055
  change: (value: boolean) => true;
4685
5056
  }, string, PublicProps, Readonly< ExtractPropTypes<{
4686
5057
  /** 모델 값 */
@@ -4740,8 +5111,8 @@ export declare const KrdsToggleSwitch: DefineComponent<ExtractPropTypes<{
4740
5111
  size: "medium" | "large";
4741
5112
  class: string;
4742
5113
  label: string;
4743
- modelValue: boolean;
4744
5114
  id: string;
5115
+ modelValue: boolean;
4745
5116
  }, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>;
4746
5117
 
4747
5118
  /**
@@ -4877,9 +5248,13 @@ export declare const KrdsTts: DefineComponent<ExtractPropTypes<{
4877
5248
  }>, () => VNode<RendererNode, RendererElement, {
4878
5249
  [key: string]: any;
4879
5250
  }>, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
5251
+ /** 읽기를 시작했을 때 (읽는 문장) */
4880
5252
  play: (text: string) => true;
5253
+ /** 일시 정지했을 때 */
4881
5254
  pause: () => true;
5255
+ /** 읽기가 끝났을 때 */
4882
5256
  end: () => true;
5257
+ /** 음성 합성을 지원하지 않거나 읽기에 실패했을 때 */
4883
5258
  error: (error: Error) => true;
4884
5259
  }, string, PublicProps, Readonly< ExtractPropTypes<{
4885
5260
  /** 읽어줄 텍스트 */
@@ -4981,6 +5356,7 @@ export declare interface LayoutSize {
4981
5356
 
4982
5357
  /**
4983
5358
  * 로딩 상태 속성
5359
+ * @deprecated 라이브러리에서 쓰이지 않아 다음 breaking 릴리스에서 제거 예정
4984
5360
  */
4985
5361
  export declare interface LoadingProps {
4986
5362
  /** 로딩 중 여부 */
@@ -5124,19 +5500,23 @@ export declare interface NavigationItem {
5124
5500
  /**
5125
5501
  * 유틸리티 타입들
5126
5502
  */
5503
+ /** @deprecated 라이브러리에서 쓰이지 않아 다음 breaking 릴리스에서 제거 예정 */
5127
5504
  export declare type Optional<T, K extends keyof T> = Omit<T, K> & Partial<Pick<T, K>>;
5128
5505
 
5129
5506
  /**
5130
5507
  * 위치 타입
5508
+ * @deprecated 라이브러리에서 쓰이지 않아 다음 breaking 릴리스에서 제거 예정
5131
5509
  */
5132
5510
  export declare type Position = 'top' | 'bottom' | 'left' | 'right';
5133
5511
 
5512
+ /** @deprecated 라이브러리에서 쓰이지 않아 다음 breaking 릴리스에서 제거 예정 */
5134
5513
  export declare type RequiredKeys<T> = {
5135
5514
  [K in keyof T]-?: object extends Pick<T, K> ? never : K;
5136
5515
  }[keyof T];
5137
5516
 
5138
5517
  /**
5139
5518
  * 반응형 값 타입
5519
+ * @deprecated 라이브러리에서 쓰이지 않아 다음 breaking 릴리스에서 제거 예정
5140
5520
  */
5141
5521
  export declare type ResponsiveValue<T> = T | {
5142
5522
  mobile?: T;