@ownclouders/design-system
Version:
ownCloud Design System is based on VueDesign Systems and is used to design ownCloud UI components
201 lines (200 loc) • 5.94 kB
TypeScript
type Page = string | number;
/**
* A list of links used for switching to different pages
*/
declare const _default: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
/**
* Number of pages to be displayed
*/
pages: {
type: NumberConstructor;
required: true;
};
/**
* Currently active page
*/
currentPage: {
type: NumberConstructor;
required: true;
};
/**
* Number of pages to be displayed. It is required to use an odd number.
* Pages will be equally split into two parts around the current page and remaining pages will be displayed as ellipsis
*/
maxDisplayed: {
type: NumberConstructor;
required: false;
default: any;
validator: (value: number) => boolean;
};
/**
* Current route which is used to render pages
*/
currentRoute: {
type: ObjectConstructor;
required: true;
};
}>, {}, {}, {
displayedPages(): Page[];
isPrevPageAvailable(): boolean;
isNextPageAvailable(): boolean;
previousPageLink(): {
name: any;
query: any;
params: any;
};
nextPageLink(): {
name: any;
query: any;
params: any;
};
$_currentPage(): number;
}, {
pageLabel(page: Page): string;
isCurrentPage(page: Page): boolean;
pageComponent(page: Page): "span" | "router-link";
bindPageProps(page: Page): {
'aria-current': string;
'aria-label'?: undefined;
to?: undefined;
} | {
'aria-label': string;
to: {
name: any;
query: any;
params: any;
};
'aria-current'?: undefined;
};
pageClass(page: Page): string[];
bindPageLink(page: Page): {
name: any;
query: any;
params: any;
};
}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
/**
* Number of pages to be displayed
*/
pages: {
type: NumberConstructor;
required: true;
};
/**
* Currently active page
*/
currentPage: {
type: NumberConstructor;
required: true;
};
/**
* Number of pages to be displayed. It is required to use an odd number.
* Pages will be equally split into two parts around the current page and remaining pages will be displayed as ellipsis
*/
maxDisplayed: {
type: NumberConstructor;
required: false;
default: any;
validator: (value: number) => boolean;
};
/**
* Current route which is used to render pages
*/
currentRoute: {
type: ObjectConstructor;
required: true;
};
}>> & Readonly<{}>, {
maxDisplayed: number;
}, {}, {
OcIcon: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
name: {
type: StringConstructor;
default: string;
};
fillType: {
type: StringConstructor;
required: false;
default: string;
validator: (value: string) => boolean;
};
accessibleLabel: {
type: StringConstructor;
default: string;
};
type: {
type: StringConstructor;
default: string;
};
size: {
type: StringConstructor;
default: string;
validator: (value: unknown) => boolean;
};
variation: {
type: StringConstructor;
default: string;
validator: (value: string) => boolean;
};
color: {
type: StringConstructor;
required: false;
default: string;
};
}>, {}, {}, {
svgTitleId(): string;
nameWithFillType(): string;
}, {
sizeClass(c: string): string;
variationClass(c: string): string;
prefix(string: string): string;
transformSvgElement(svg: SVGElement): SVGElement;
}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, "loaded"[], "loaded", import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
name: {
type: StringConstructor;
default: string;
};
fillType: {
type: StringConstructor;
required: false;
default: string;
validator: (value: string) => boolean;
};
accessibleLabel: {
type: StringConstructor;
default: string;
};
type: {
type: StringConstructor;
default: string;
};
size: {
type: StringConstructor;
default: string;
validator: (value: unknown) => boolean;
};
variation: {
type: StringConstructor;
default: string;
validator: (value: string) => boolean;
};
color: {
type: StringConstructor;
required: false;
default: string;
};
}>> & Readonly<{
onLoaded?: (...args: any[]) => any;
}>, {
name: string;
type: string;
fillType: string;
accessibleLabel: string;
size: string;
variation: string;
color: string;
}, {}, {
InlineSvg: import('vue').DefineComponent<import('vue-inline-svg').InlineSvgProps, unknown, unknown, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, Record<string, any>, string, import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps, import('vue-inline-svg').InlineSvgProps>;
}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
export default _default;