vsoft-ui 1.0.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/README.md ADDED
@@ -0,0 +1,126 @@
1
+ # VS UI
2
+
3
+ 一个基于 Element Plus 的 Vue 3 组件库。
4
+
5
+ ## 特性
6
+
7
+ - 🎨 基于 Element Plus,API 保持一致
8
+ - ⚡️ Vue 3 Composition API
9
+ - 📦 TypeScript 支持
10
+ - 🎯 按需引入
11
+ - 📱 响应式设计
12
+ - 🔐 **全局权限管理系统** - 所有组件支持权限控制
13
+
14
+ ## 安装
15
+
16
+ ```bash
17
+ # 使用 pnpm(推荐)
18
+ pnpm add vsoft-ui
19
+
20
+ # 使用 npm
21
+ npm install vsoft-ui
22
+
23
+ # 使用 yarn
24
+ yarn add vsoft-ui
25
+ ```
26
+
27
+ ## 快速开始
28
+
29
+ ### 安装
30
+
31
+ ```bash
32
+ # 使用 pnpm(推荐)
33
+ pnpm add vsoft-ui
34
+
35
+ # 使用 npm
36
+ npm install vsoft-ui
37
+
38
+ # 使用 yarn
39
+ yarn add vsoft-ui
40
+ ```
41
+
42
+ ### 完整引入
43
+
44
+ ```javascript
45
+ import { createApp } from 'vue'
46
+ import App from './App.vue'
47
+ import VsUI from 'vsoft-ui'
48
+ import 'vsoft-ui/style.css'
49
+
50
+ const app = createApp(App)
51
+
52
+ // 初始化权限(可选)
53
+ app.use(VsUI, {
54
+ permissions: ['user:view', 'user:edit', 'user:delete']
55
+ })
56
+
57
+ app.mount('#app')
58
+ ```
59
+
60
+ ### 按需引入
61
+
62
+ ```vue
63
+ <template>
64
+ <vs-button type="primary">按钮</vs-button>
65
+ </template>
66
+
67
+ <script setup>
68
+ import { VsButton } from 'vsoft-ui'
69
+ </script>
70
+ ```
71
+
72
+ > 📖 更多使用示例请查看 [USAGE.md](./USAGE.md)
73
+
74
+ ## 开发
75
+
76
+ ```bash
77
+ # 安装依赖
78
+ pnpm install
79
+
80
+ # 启动开发服务器
81
+ pnpm dev
82
+
83
+ # 构建组件库
84
+ pnpm build
85
+
86
+ # 启动文档开发服务器
87
+ pnpm dev:docs
88
+
89
+ # 构建文档
90
+ pnpm build:docs
91
+ ```
92
+
93
+ ## 项目结构
94
+
95
+ ```
96
+ vs-ui/
97
+ ├── src/ # 组件库源码
98
+ │ ├── components/ # 组件目录
99
+ │ ├── install.ts # 安装函数
100
+ │ └── index.ts # 入口文件
101
+ ├── docs/ # VitePress 文档
102
+ │ ├── .vitepress/ # VitePress 配置
103
+ │ ├── guide/ # 指南文档
104
+ │ └── components/ # 组件文档
105
+ ├── dist/ # 构建输出目录
106
+ ├── vite.config.ts # Vite 配置
107
+ ├── tsconfig.json # TypeScript 配置
108
+ └── package.json # 项目配置
109
+ ```
110
+
111
+ ## 组件列表
112
+
113
+ - Button 按钮
114
+ - Card 卡片
115
+ - Table 表格(支持后端控制列显示/隐藏、排序和权限控制)
116
+
117
+ 更多组件正在开发中...
118
+
119
+ ## 浏览器支持
120
+
121
+ 现代浏览器和 IE11+(需要 polyfills)
122
+
123
+ ## 许可证
124
+
125
+ MIT
126
+
@@ -0,0 +1,56 @@
1
+ export interface ButtonProps {
2
+ type?: 'default' | 'primary' | 'success' | 'warning' | 'danger' | 'info' | 'text';
3
+ size?: 'large' | 'default' | 'small';
4
+ disabled?: boolean;
5
+ loading?: boolean;
6
+ /** 权限标识 */
7
+ permission?: string | string[];
8
+ }
9
+ declare const _default: __VLS_WithTemplateSlots<import('vue').DefineComponent<import('vue').ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<ButtonProps>, {
10
+ type: string;
11
+ size: string;
12
+ disabled: boolean;
13
+ loading: boolean;
14
+ permission: undefined;
15
+ }>>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
16
+ click: (event: MouseEvent) => void;
17
+ }, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<ButtonProps>, {
18
+ type: string;
19
+ size: string;
20
+ disabled: boolean;
21
+ loading: boolean;
22
+ permission: undefined;
23
+ }>>> & Readonly<{
24
+ onClick?: ((event: MouseEvent) => any) | undefined;
25
+ }>, {
26
+ permission: string | string[];
27
+ size: "large" | "default" | "small";
28
+ type: "default" | "primary" | "success" | "warning" | "danger" | "info" | "text";
29
+ disabled: boolean;
30
+ loading: boolean;
31
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>, {
32
+ default?(_: {}): any;
33
+ }>;
34
+ export default _default;
35
+ type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
36
+ type __VLS_TypePropsToRuntimeProps<T> = {
37
+ [K in keyof T]-?: {} extends Pick<T, K> ? {
38
+ type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
39
+ } : {
40
+ type: import('vue').PropType<T[K]>;
41
+ required: true;
42
+ };
43
+ };
44
+ type __VLS_WithDefaults<P, D> = {
45
+ [K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_Prettify<P[K] & {
46
+ default: D[K];
47
+ }> : P[K];
48
+ };
49
+ type __VLS_Prettify<T> = {
50
+ [K in keyof T]: T[K];
51
+ } & {};
52
+ type __VLS_WithTemplateSlots<T, S> = T & {
53
+ new (): {
54
+ $slots: S;
55
+ };
56
+ };
@@ -0,0 +1,45 @@
1
+ import { CSSProperties } from 'vue';
2
+
3
+ export interface CardProps {
4
+ header?: string;
5
+ shadow?: 'always' | 'hover' | 'never';
6
+ bodyStyle?: CSSProperties;
7
+ /** 权限标识 */
8
+ permission?: string | string[];
9
+ }
10
+ declare const _default: __VLS_WithTemplateSlots<import('vue').DefineComponent<import('vue').ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<CardProps>, {
11
+ shadow: string;
12
+ permission: undefined;
13
+ }>>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<CardProps>, {
14
+ shadow: string;
15
+ permission: undefined;
16
+ }>>> & Readonly<{}>, {
17
+ permission: string | string[];
18
+ shadow: "always" | "hover" | "never";
19
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>, {
20
+ header?(_: {}): any;
21
+ default?(_: {}): any;
22
+ }>;
23
+ export default _default;
24
+ type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
25
+ type __VLS_TypePropsToRuntimeProps<T> = {
26
+ [K in keyof T]-?: {} extends Pick<T, K> ? {
27
+ type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
28
+ } : {
29
+ type: import('vue').PropType<T[K]>;
30
+ required: true;
31
+ };
32
+ };
33
+ type __VLS_WithDefaults<P, D> = {
34
+ [K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_Prettify<P[K] & {
35
+ default: D[K];
36
+ }> : P[K];
37
+ };
38
+ type __VLS_Prettify<T> = {
39
+ [K in keyof T]: T[K];
40
+ } & {};
41
+ type __VLS_WithTemplateSlots<T, S> = T & {
42
+ new (): {
43
+ $slots: S;
44
+ };
45
+ };
@@ -0,0 +1,436 @@
1
+ import { default as VsButton } from './button/index.vue';
2
+ import { default as VsCard } from './card/index.vue';
3
+ import { default as VsTable } from './table/index.vue';
4
+ import { default as VsPagination } from './pagination/index.vue';
5
+
6
+ export { VsButton, VsCard, VsTable, VsPagination };
7
+ export type { BackendColumnConfig, TableProps, TableEmits, PermissionChecker } from './table/types';
8
+ export { usePermission, PermissionService, createPermissionService } from '../permission';
9
+ export type { InstallOptions } from '../install';
10
+ declare const _default: {
11
+ VsButton: {
12
+ new (...args: any[]): import('vue').CreateComponentPublicInstanceWithMixins<Readonly<import('vue').ExtractPropTypes<{
13
+ permission: {
14
+ type: import('vue').PropType<string | string[]>;
15
+ default: undefined;
16
+ };
17
+ size: {
18
+ type: import('vue').PropType<"default" | "large" | "small">;
19
+ default: string;
20
+ };
21
+ type: {
22
+ type: import('vue').PropType<"default" | "primary" | "success" | "warning" | "danger" | "info" | "text">;
23
+ default: string;
24
+ };
25
+ disabled: {
26
+ type: import('vue').PropType<boolean>;
27
+ default: boolean;
28
+ };
29
+ loading: {
30
+ type: import('vue').PropType<boolean>;
31
+ default: boolean;
32
+ };
33
+ }>> & Readonly<{
34
+ onClick?: ((event: MouseEvent) => any) | undefined;
35
+ }>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
36
+ click: (event: MouseEvent) => void;
37
+ }, import('vue').PublicProps, {
38
+ permission: string | string[];
39
+ size: "large" | "default" | "small";
40
+ type: "default" | "primary" | "success" | "warning" | "danger" | "info" | "text";
41
+ disabled: boolean;
42
+ loading: boolean;
43
+ }, true, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {}, any, import('vue').ComponentProvideOptions, {
44
+ P: {};
45
+ B: {};
46
+ D: {};
47
+ C: {};
48
+ M: {};
49
+ Defaults: {};
50
+ }, Readonly<import('vue').ExtractPropTypes<{
51
+ permission: {
52
+ type: import('vue').PropType<string | string[]>;
53
+ default: undefined;
54
+ };
55
+ size: {
56
+ type: import('vue').PropType<"default" | "large" | "small">;
57
+ default: string;
58
+ };
59
+ type: {
60
+ type: import('vue').PropType<"default" | "primary" | "success" | "warning" | "danger" | "info" | "text">;
61
+ default: string;
62
+ };
63
+ disabled: {
64
+ type: import('vue').PropType<boolean>;
65
+ default: boolean;
66
+ };
67
+ loading: {
68
+ type: import('vue').PropType<boolean>;
69
+ default: boolean;
70
+ };
71
+ }>> & Readonly<{
72
+ onClick?: ((event: MouseEvent) => any) | undefined;
73
+ }>, {}, {}, {}, {}, {
74
+ permission: string | string[];
75
+ size: "large" | "default" | "small";
76
+ type: "default" | "primary" | "success" | "warning" | "danger" | "info" | "text";
77
+ disabled: boolean;
78
+ loading: boolean;
79
+ }>;
80
+ __isFragment?: never;
81
+ __isTeleport?: never;
82
+ __isSuspense?: never;
83
+ } & import('vue').ComponentOptionsBase<Readonly<import('vue').ExtractPropTypes<{
84
+ permission: {
85
+ type: import('vue').PropType<string | string[]>;
86
+ default: undefined;
87
+ };
88
+ size: {
89
+ type: import('vue').PropType<"default" | "large" | "small">;
90
+ default: string;
91
+ };
92
+ type: {
93
+ type: import('vue').PropType<"default" | "primary" | "success" | "warning" | "danger" | "info" | "text">;
94
+ default: string;
95
+ };
96
+ disabled: {
97
+ type: import('vue').PropType<boolean>;
98
+ default: boolean;
99
+ };
100
+ loading: {
101
+ type: import('vue').PropType<boolean>;
102
+ default: boolean;
103
+ };
104
+ }>> & Readonly<{
105
+ onClick?: ((event: MouseEvent) => any) | undefined;
106
+ }>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
107
+ click: (event: MouseEvent) => void;
108
+ }, string, {
109
+ permission: string | string[];
110
+ size: "large" | "default" | "small";
111
+ type: "default" | "primary" | "success" | "warning" | "danger" | "info" | "text";
112
+ disabled: boolean;
113
+ loading: boolean;
114
+ }, {}, string, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, import('vue').ComponentProvideOptions> & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps & (new () => {
115
+ $slots: {
116
+ default?(_: {}): any;
117
+ };
118
+ });
119
+ VsCard: {
120
+ new (...args: any[]): import('vue').CreateComponentPublicInstanceWithMixins<Readonly<import('vue').ExtractPropTypes<{
121
+ permission: {
122
+ type: import('vue').PropType<string | string[]>;
123
+ default: undefined;
124
+ };
125
+ header: {
126
+ type: import('vue').PropType<string>;
127
+ };
128
+ shadow: {
129
+ type: import('vue').PropType<"always" | "hover" | "never">;
130
+ default: string;
131
+ };
132
+ bodyStyle: {
133
+ type: import('vue').PropType<import('vue').CSSProperties>;
134
+ };
135
+ }>> & Readonly<{}>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, import('vue').PublicProps, {
136
+ permission: string | string[];
137
+ shadow: "always" | "hover" | "never";
138
+ }, true, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {}, any, import('vue').ComponentProvideOptions, {
139
+ P: {};
140
+ B: {};
141
+ D: {};
142
+ C: {};
143
+ M: {};
144
+ Defaults: {};
145
+ }, Readonly<import('vue').ExtractPropTypes<{
146
+ permission: {
147
+ type: import('vue').PropType<string | string[]>;
148
+ default: undefined;
149
+ };
150
+ header: {
151
+ type: import('vue').PropType<string>;
152
+ };
153
+ shadow: {
154
+ type: import('vue').PropType<"always" | "hover" | "never">;
155
+ default: string;
156
+ };
157
+ bodyStyle: {
158
+ type: import('vue').PropType<import('vue').CSSProperties>;
159
+ };
160
+ }>> & Readonly<{}>, {}, {}, {}, {}, {
161
+ permission: string | string[];
162
+ shadow: "always" | "hover" | "never";
163
+ }>;
164
+ __isFragment?: never;
165
+ __isTeleport?: never;
166
+ __isSuspense?: never;
167
+ } & import('vue').ComponentOptionsBase<Readonly<import('vue').ExtractPropTypes<{
168
+ permission: {
169
+ type: import('vue').PropType<string | string[]>;
170
+ default: undefined;
171
+ };
172
+ header: {
173
+ type: import('vue').PropType<string>;
174
+ };
175
+ shadow: {
176
+ type: import('vue').PropType<"always" | "hover" | "never">;
177
+ default: string;
178
+ };
179
+ bodyStyle: {
180
+ type: import('vue').PropType<import('vue').CSSProperties>;
181
+ };
182
+ }>> & Readonly<{}>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, {
183
+ permission: string | string[];
184
+ shadow: "always" | "hover" | "never";
185
+ }, {}, string, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, import('vue').ComponentProvideOptions> & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps & (new () => {
186
+ $slots: {
187
+ header?(_: {}): any;
188
+ default?(_: {}): any;
189
+ };
190
+ });
191
+ VsTable: {
192
+ new (...args: any[]): import('vue').CreateComponentPublicInstanceWithMixins<Readonly<import('vue').ExtractPropTypes<{
193
+ [x: string]: {
194
+ type: import('vue').PropType<any>;
195
+ };
196
+ [x: number]: {
197
+ type: import('vue').PropType<any>;
198
+ };
199
+ }>> & Readonly<{}>, {
200
+ tableRef: import('vue').Ref<import('element-plus').TableInstance | undefined, import('element-plus').TableInstance | undefined>;
201
+ clearSort: () => void | undefined;
202
+ clearFilter: (columnKeys?: string[]) => void | undefined;
203
+ doLayout: () => void | undefined;
204
+ scrollTo: (options: ScrollToOptions | number, yCoord?: number) => void | undefined;
205
+ setScrollTop: (top: number) => void | undefined;
206
+ setScrollLeft: (left: number) => void | undefined;
207
+ }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, import('vue').PublicProps, {}, true, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {}, any, import('vue').ComponentProvideOptions, {
208
+ P: {};
209
+ B: {};
210
+ D: {};
211
+ C: {};
212
+ M: {};
213
+ Defaults: {};
214
+ }, Readonly<import('vue').ExtractPropTypes<{
215
+ [x: string]: {
216
+ type: import('vue').PropType<any>;
217
+ };
218
+ [x: number]: {
219
+ type: import('vue').PropType<any>;
220
+ };
221
+ }>> & Readonly<{}>, {
222
+ tableRef: import('vue').Ref<import('element-plus').TableInstance | undefined, import('element-plus').TableInstance | undefined>;
223
+ clearSort: () => void | undefined;
224
+ clearFilter: (columnKeys?: string[]) => void | undefined;
225
+ doLayout: () => void | undefined;
226
+ scrollTo: (options: ScrollToOptions | number, yCoord?: number) => void | undefined;
227
+ setScrollTop: (top: number) => void | undefined;
228
+ setScrollLeft: (left: number) => void | undefined;
229
+ }, {}, {}, {}, {}>;
230
+ __isFragment?: never;
231
+ __isTeleport?: never;
232
+ __isSuspense?: never;
233
+ } & import('vue').ComponentOptionsBase<Readonly<import('vue').ExtractPropTypes<{
234
+ [x: string]: {
235
+ type: import('vue').PropType<any>;
236
+ };
237
+ [x: number]: {
238
+ type: import('vue').PropType<any>;
239
+ };
240
+ }>> & Readonly<{}>, {
241
+ tableRef: import('vue').Ref<import('element-plus').TableInstance | undefined, import('element-plus').TableInstance | undefined>;
242
+ clearSort: () => void | undefined;
243
+ clearFilter: (columnKeys?: string[]) => void | undefined;
244
+ doLayout: () => void | undefined;
245
+ scrollTo: (options: ScrollToOptions | number, yCoord?: number) => void | undefined;
246
+ setScrollTop: (top: number) => void | undefined;
247
+ setScrollLeft: (left: number) => void | undefined;
248
+ }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, {}, {}, string, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, import('vue').ComponentProvideOptions> & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps & (new () => {
249
+ $slots: Partial<Record<any, (_: {
250
+ column: any;
251
+ index: any;
252
+ }) => any>> & Partial<Record<any, (_: {
253
+ row: any;
254
+ column: any;
255
+ index: any;
256
+ }) => any>> & {
257
+ default?(_: {
258
+ row: any;
259
+ column: any;
260
+ index: any;
261
+ }): any;
262
+ };
263
+ });
264
+ VsPagination: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
265
+ permission: {
266
+ type: import('vue').PropType<string | string[]>;
267
+ default: undefined;
268
+ };
269
+ size: {
270
+ type: import('vue').PropType<"default" | "large" | "small">;
271
+ default: string;
272
+ };
273
+ disabled: {
274
+ type: import('vue').PropType<boolean>;
275
+ default: boolean;
276
+ };
277
+ currentPage: {
278
+ type: import('vue').PropType<number>;
279
+ default: number;
280
+ };
281
+ pageSize: {
282
+ type: import('vue').PropType<number>;
283
+ default: number;
284
+ };
285
+ total: {
286
+ type: import('vue').PropType<number>;
287
+ default: number;
288
+ };
289
+ pageCount: {
290
+ type: import('vue').PropType<number>;
291
+ default: undefined;
292
+ };
293
+ pageSizes: {
294
+ type: import('vue').PropType<number[]>;
295
+ default: () => number[];
296
+ };
297
+ layout: {
298
+ type: import('vue').PropType<string>;
299
+ default: string;
300
+ };
301
+ pagerCount: {
302
+ type: import('vue').PropType<number>;
303
+ default: number;
304
+ };
305
+ background: {
306
+ type: import('vue').PropType<boolean>;
307
+ default: boolean;
308
+ };
309
+ hideOnSinglePage: {
310
+ type: import('vue').PropType<boolean>;
311
+ default: boolean;
312
+ };
313
+ prevText: {
314
+ type: import('vue').PropType<string>;
315
+ default: string;
316
+ };
317
+ prevIcon: {
318
+ type: import('vue').PropType<string | import('vue').Component>;
319
+ default: undefined;
320
+ };
321
+ nextText: {
322
+ type: import('vue').PropType<string>;
323
+ default: string;
324
+ };
325
+ nextIcon: {
326
+ type: import('vue').PropType<string | import('vue').Component>;
327
+ default: undefined;
328
+ };
329
+ teleported: {
330
+ type: import('vue').PropType<boolean>;
331
+ default: boolean;
332
+ };
333
+ }>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
334
+ "update:currentPage": (page: number) => void;
335
+ "update:pageSize": (size: number) => void;
336
+ "current-change": (page: number) => void;
337
+ "size-change": (size: number) => void;
338
+ "prev-click": (page: number) => void;
339
+ "next-click": (page: number) => void;
340
+ }, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
341
+ permission: {
342
+ type: import('vue').PropType<string | string[]>;
343
+ default: undefined;
344
+ };
345
+ size: {
346
+ type: import('vue').PropType<"default" | "large" | "small">;
347
+ default: string;
348
+ };
349
+ disabled: {
350
+ type: import('vue').PropType<boolean>;
351
+ default: boolean;
352
+ };
353
+ currentPage: {
354
+ type: import('vue').PropType<number>;
355
+ default: number;
356
+ };
357
+ pageSize: {
358
+ type: import('vue').PropType<number>;
359
+ default: number;
360
+ };
361
+ total: {
362
+ type: import('vue').PropType<number>;
363
+ default: number;
364
+ };
365
+ pageCount: {
366
+ type: import('vue').PropType<number>;
367
+ default: undefined;
368
+ };
369
+ pageSizes: {
370
+ type: import('vue').PropType<number[]>;
371
+ default: () => number[];
372
+ };
373
+ layout: {
374
+ type: import('vue').PropType<string>;
375
+ default: string;
376
+ };
377
+ pagerCount: {
378
+ type: import('vue').PropType<number>;
379
+ default: number;
380
+ };
381
+ background: {
382
+ type: import('vue').PropType<boolean>;
383
+ default: boolean;
384
+ };
385
+ hideOnSinglePage: {
386
+ type: import('vue').PropType<boolean>;
387
+ default: boolean;
388
+ };
389
+ prevText: {
390
+ type: import('vue').PropType<string>;
391
+ default: string;
392
+ };
393
+ prevIcon: {
394
+ type: import('vue').PropType<string | import('vue').Component>;
395
+ default: undefined;
396
+ };
397
+ nextText: {
398
+ type: import('vue').PropType<string>;
399
+ default: string;
400
+ };
401
+ nextIcon: {
402
+ type: import('vue').PropType<string | import('vue').Component>;
403
+ default: undefined;
404
+ };
405
+ teleported: {
406
+ type: import('vue').PropType<boolean>;
407
+ default: boolean;
408
+ };
409
+ }>> & Readonly<{
410
+ "onUpdate:currentPage"?: ((page: number) => any) | undefined;
411
+ "onUpdate:pageSize"?: ((size: number) => any) | undefined;
412
+ "onCurrent-change"?: ((page: number) => any) | undefined;
413
+ "onSize-change"?: ((size: number) => any) | undefined;
414
+ "onPrev-click"?: ((page: number) => any) | undefined;
415
+ "onNext-click"?: ((page: number) => any) | undefined;
416
+ }>, {
417
+ permission: string | string[];
418
+ size: "large" | "default" | "small";
419
+ disabled: boolean;
420
+ currentPage: number;
421
+ pageSize: number;
422
+ total: number;
423
+ pageCount: number;
424
+ pageSizes: number[];
425
+ layout: string;
426
+ pagerCount: number;
427
+ background: boolean;
428
+ hideOnSinglePage: boolean;
429
+ prevText: string;
430
+ prevIcon: string | import('vue').Component;
431
+ nextText: string;
432
+ nextIcon: string | import('vue').Component;
433
+ teleported: boolean;
434
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
435
+ };
436
+ export default _default;