@nextcloud/vue
Version:
Nextcloud vue components
1,345 lines • 98.3 kB
TypeScript
declare const _default: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
/**
* An array containing the items to show (specific structure must be respected,
* except if you override item rendering in the default slot).
*/
items: {
type: ArrayConstructor;
default: () => never[];
};
/**
* If this is set, a "show more" text is displayed on the widget's bottom.
* It's a link pointing to this URL.
*/
showMoreUrl: {
type: StringConstructor;
default: string;
};
/**
* The text of show more button.
*
* Expected to be in the form "More {itemName} …"
*/
showMoreLabel: {
type: StringConstructor;
default: string;
};
/**
* A boolean to put the widget in a loading state.
*/
loading: {
type: BooleanConstructor;
default: boolean;
};
/**
* An object containing context menu entries that will be displayed for each item.
*/
itemMenu: {
type: ObjectConstructor;
default: () => {};
};
/**
* Whether both the items and the empty content message are shown.
* Usefull for e.g. showing "No mentions" and a list of elements.
*/
showItemsAndEmptyContent: {
type: BooleanConstructor;
default: boolean;
};
/**
* The text to show in the empty content area.
*/
emptyContentMessage: {
type: StringConstructor;
default: string;
};
/**
* The text to show in the half empty content area.
*/
halfEmptyContentMessage: {
type: StringConstructor;
default: string;
};
}>, {}, {}, {
handlers(): {};
displayedItems(): unknown[];
showHalfEmptyContentArea(): boolean | "";
halfEmptyContentString(): string;
maxItemNumber(): 5 | 7;
showMore(): boolean | "";
}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
/**
* An array containing the items to show (specific structure must be respected,
* except if you override item rendering in the default slot).
*/
items: {
type: ArrayConstructor;
default: () => never[];
};
/**
* If this is set, a "show more" text is displayed on the widget's bottom.
* It's a link pointing to this URL.
*/
showMoreUrl: {
type: StringConstructor;
default: string;
};
/**
* The text of show more button.
*
* Expected to be in the form "More {itemName} …"
*/
showMoreLabel: {
type: StringConstructor;
default: string;
};
/**
* A boolean to put the widget in a loading state.
*/
loading: {
type: BooleanConstructor;
default: boolean;
};
/**
* An object containing context menu entries that will be displayed for each item.
*/
itemMenu: {
type: ObjectConstructor;
default: () => {};
};
/**
* Whether both the items and the empty content message are shown.
* Usefull for e.g. showing "No mentions" and a list of elements.
*/
showItemsAndEmptyContent: {
type: BooleanConstructor;
default: boolean;
};
/**
* The text to show in the empty content area.
*/
emptyContentMessage: {
type: StringConstructor;
default: string;
};
/**
* The text to show in the half empty content area.
*/
halfEmptyContentMessage: {
type: StringConstructor;
default: string;
};
}>> & Readonly<{}>, {
loading: boolean;
itemMenu: Record<string, any>;
items: unknown[];
showMoreUrl: string;
showMoreLabel: string;
showItemsAndEmptyContent: boolean;
emptyContentMessage: string;
halfEmptyContentMessage: string;
}, {}, {
NcAvatar: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
url: {
type: StringConstructor;
default: undefined;
};
iconClass: {
type: StringConstructor;
default: undefined;
};
user: {
type: StringConstructor;
default: undefined;
};
hideStatus: {
type: BooleanConstructor;
default: boolean;
};
verboseStatus: {
type: BooleanConstructor;
default: boolean;
};
preloadedUserStatus: {
type: ObjectConstructor;
default: undefined;
};
isGuest: {
type: BooleanConstructor;
default: boolean;
};
displayName: {
type: StringConstructor;
default: undefined;
};
size: {
type: NumberConstructor;
default: number;
};
noPlaceholder: {
type: BooleanConstructor;
default: boolean;
};
disableTooltip: {
type: BooleanConstructor;
default: boolean;
};
disableMenu: {
type: BooleanConstructor;
default: boolean;
};
tooltipMessage: {
type: StringConstructor;
default: null;
};
isNoUser: {
type: BooleanConstructor;
default: boolean;
};
menuContainer: {
type: (ObjectConstructor | BooleanConstructor | StringConstructor | {
new (): Element;
prototype: Element;
})[];
default: string;
};
}>, {
isDarkTheme: Readonly<import('vue').Ref<boolean, boolean>>;
}, {
avatarUrlLoaded: null;
avatarSrcSetLoaded: null;
userDoesNotExist: boolean;
isAvatarLoaded: boolean;
isMenuLoaded: boolean;
contactsMenuLoading: boolean;
contactsMenuData: {};
contactsMenuActions: never[];
contactsMenuOpenState: boolean;
}, {
avatarAriaLabel(): string | undefined;
canDisplayUserStatus(): boolean;
showUserStatusIconOnAvatar(): false | null;
userIdentifier(): string | undefined;
isUserDefined(): boolean;
isDisplayNameDefined(): boolean;
isUrlDefined(): boolean;
hasMenu(): boolean;
showInitials(): boolean;
avatarStyle(): {
'--avatar-size': string;
lineHeight: string | number;
fontSize: string;
};
initialsWrapperStyle(): {
backgroundColor: string;
};
initialsStyle(): {
color: string;
};
tooltip(): string | null | undefined;
initials(): string;
menu(): {
ncActionComponent: import('vue').DefineComponent<{}, {}, {}, {}, {}, {
mixins: {
beforeUpdate(): void;
data(): {
text: any;
};
computed: {
isLongText(): any;
};
methods: {
getText(): any;
};
}[];
props: {
icon: {
type: StringConstructor;
default: string;
};
name: {
type: StringConstructor;
default: string;
};
title: {
type: StringConstructor;
default: string;
};
closeAfterClick: {
type: BooleanConstructor;
default: boolean;
};
ariaLabel: {
type: StringConstructor;
default: null;
};
};
inject: {
closeMenu: {
from: import('vue').InjectionKey<(returnFocus: boolean) => void>;
};
};
emits: string[];
created(): void;
computed: {
isIconUrl(): boolean;
};
methods: {
onClick(event: any): void;
};
}, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
ncActionComponentProps: {};
iconSvg: string | undefined;
text: string;
}[] | {
ncActionComponent: import('vue').DefineSetupFnComponent<Record<string, any>, {}, {}, Record<string, any> & {}, import('vue').PublicProps> | import('vue').DefineComponent<import('vue').ExtractPropTypes<{
to: {
type: (ObjectConstructor | StringConstructor)[];
required: true;
};
}>, {}, {}, {}, {}, {
mixins: {
beforeUpdate(): void;
data(): {
text: any;
};
computed: {
isLongText(): any;
};
methods: {
getText(): any;
};
}[];
props: {
icon: {
type: StringConstructor;
default: string;
};
name: {
type: StringConstructor;
default: string;
};
title: {
type: StringConstructor;
default: string;
};
closeAfterClick: {
type: BooleanConstructor;
default: boolean;
};
ariaLabel: {
type: StringConstructor;
default: null;
};
};
inject: {
closeMenu: {
from: import('vue').InjectionKey<(returnFocus: boolean) => void>;
};
};
emits: string[];
created(): void;
computed: {
isIconUrl(): boolean;
};
methods: {
onClick(event: any): void;
};
}, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
to: {
type: (ObjectConstructor | StringConstructor)[];
required: true;
};
}>> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
ncActionComponentProps: {
to: string;
icon: any;
href?: undefined;
} | {
href: any;
icon: any;
to?: undefined;
};
text: any;
}[];
}, {
t: (original: string, placeholders?: Record<string, string | number>) => string;
handleUserStatusUpdated(state: any): void;
toggleMenu(event: KeyboardEvent | MouseEvent): Promise<void>;
closeMenu(): void;
fetchContactsMenu(): Promise<void>;
loadAvatarUrl(): void;
avatarUrlGenerator(user: string, size: number): string;
updateImageIfValid(url: string, srcset?: any[]): void;
}, {
data(): {
hasStatus: boolean;
userStatus: {
status: null;
message: null;
icon: null;
};
};
methods: {
fetchUserStatus(userId: string): Promise<void>;
setUserStatus({ status, message, icon }: string): void;
};
}, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
url: {
type: StringConstructor;
default: undefined;
};
iconClass: {
type: StringConstructor;
default: undefined;
};
user: {
type: StringConstructor;
default: undefined;
};
hideStatus: {
type: BooleanConstructor;
default: boolean;
};
verboseStatus: {
type: BooleanConstructor;
default: boolean;
};
preloadedUserStatus: {
type: ObjectConstructor;
default: undefined;
};
isGuest: {
type: BooleanConstructor;
default: boolean;
};
displayName: {
type: StringConstructor;
default: undefined;
};
size: {
type: NumberConstructor;
default: number;
};
noPlaceholder: {
type: BooleanConstructor;
default: boolean;
};
disableTooltip: {
type: BooleanConstructor;
default: boolean;
};
disableMenu: {
type: BooleanConstructor;
default: boolean;
};
tooltipMessage: {
type: StringConstructor;
default: null;
};
isNoUser: {
type: BooleanConstructor;
default: boolean;
};
menuContainer: {
type: (ObjectConstructor | BooleanConstructor | StringConstructor | {
new (): Element;
prototype: Element;
})[];
default: string;
};
}>> & Readonly<{}>, {
size: number;
displayName: string;
url: string;
user: string;
iconClass: string;
hideStatus: boolean;
verboseStatus: boolean;
preloadedUserStatus: Record<string, any>;
isGuest: boolean;
noPlaceholder: boolean;
disableTooltip: boolean;
disableMenu: boolean;
tooltipMessage: string;
isNoUser: boolean;
menuContainer: string | boolean | Element | Record<string, any>;
}, {}, {
IconDotsHorizontal: any;
NcActions: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
open: {
type: BooleanConstructor;
default: boolean;
};
manualOpen: {
type: BooleanConstructor;
default: boolean;
};
forceMenu: {
type: BooleanConstructor;
default: boolean;
};
forceName: {
type: BooleanConstructor;
default: boolean;
};
menuName: {
type: StringConstructor;
default: null;
};
primary: {
type: BooleanConstructor;
default: boolean;
};
defaultIcon: {
type: StringConstructor;
default: string;
};
ariaLabel: {
type: StringConstructor;
default: string;
};
placement: {
type: StringConstructor;
default: string;
};
boundariesElement: {
type: {
new (): Element;
prototype: Element;
};
default: () => HTMLElement | null;
};
container: {
type: (ObjectConstructor | BooleanConstructor | StringConstructor | {
new (): Element;
prototype: Element;
})[];
default: string;
};
disabled: {
type: BooleanConstructor;
default: boolean;
};
inline: {
type: NumberConstructor;
default: number;
};
variant: {
type: StringConstructor;
validator(value: unknown): boolean;
default: null;
};
size: {
type: StringConstructor;
default: string;
validator(value: unknown): boolean;
};
}>, {
randomId: string;
}, {
opened: boolean;
focusIndex: number;
actionsMenuSemanticType: "menu" | "navigation" | "dialog" | "tooltip" | "unknown";
}, {
triggerButtonVariant(): string;
config(): {
popupRole: string;
withArrowNavigation: boolean;
withTabNavigation: boolean;
withFocusTrap: boolean;
} | {
popupRole: undefined;
withArrowNavigation: boolean;
withTabNavigation: boolean;
withFocusTrap: boolean;
} | {
popupRole: string;
withArrowNavigation: boolean;
withTabNavigation: boolean;
withFocusTrap: boolean;
} | {
popupRole: undefined;
withArrowNavigation: boolean;
withTabNavigation: boolean;
withFocusTrap: boolean;
} | {
popupRole: undefined;
role: undefined;
withArrowNavigation: boolean;
withTabNavigation: boolean;
withFocusTrap: boolean;
};
withFocusTrap(): boolean;
}, {
getActionName(action: import('vue').VNode): string;
isValidSingleAction(action: import('vue').VNode): boolean;
isAction(action: any): boolean;
isIconUrl(url: string): boolean;
toggleMenu(state: any): void;
openMenu(): void;
closeMenu(returnFocus?: boolean): Promise<void>;
onOpened(): void;
onClosed(): void;
getCurrentActiveMenuItemElement(): HTMLElement | null;
getFocusableMenuItemElements(): NodeList<HTMLElement>;
onKeydown(event: object): void;
onTriggerKeydown(event: any): void;
handleEscapePressed(event: any): void;
removeCurrentActive(): void;
focusAction(): void;
focusPreviousAction(event: any): void;
focusNextAction(event: any): void;
focusFirstAction(event: any): void;
focusLastAction(event: any): void;
preventIfEvent(event: any): void;
onFocus(event: any): void;
onBlur(event: any): void;
onClick(event: any): void;
}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, ("blur" | "click" | "close" | "focus" | "open" | "closed" | "opened" | "update:open")[], "blur" | "click" | "close" | "focus" | "open" | "closed" | "opened" | "update:open", import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
open: {
type: BooleanConstructor;
default: boolean;
};
manualOpen: {
type: BooleanConstructor;
default: boolean;
};
forceMenu: {
type: BooleanConstructor;
default: boolean;
};
forceName: {
type: BooleanConstructor;
default: boolean;
};
menuName: {
type: StringConstructor;
default: null;
};
primary: {
type: BooleanConstructor;
default: boolean;
};
defaultIcon: {
type: StringConstructor;
default: string;
};
ariaLabel: {
type: StringConstructor;
default: string;
};
placement: {
type: StringConstructor;
default: string;
};
boundariesElement: {
type: {
new (): Element;
prototype: Element;
};
default: () => HTMLElement | null;
};
container: {
type: (ObjectConstructor | BooleanConstructor | StringConstructor | {
new (): Element;
prototype: Element;
})[];
default: string;
};
disabled: {
type: BooleanConstructor;
default: boolean;
};
inline: {
type: NumberConstructor;
default: number;
};
variant: {
type: StringConstructor;
validator(value: unknown): boolean;
default: null;
};
size: {
type: StringConstructor;
default: string;
validator(value: unknown): boolean;
};
}>> & Readonly<{
onFocus?: ((...args: any[]) => any) | undefined;
onBlur?: ((...args: any[]) => any) | undefined;
onClick?: ((...args: any[]) => any) | undefined;
onClose?: ((...args: any[]) => any) | undefined;
onOpen?: ((...args: any[]) => any) | undefined;
onClosed?: ((...args: any[]) => any) | undefined;
onOpened?: ((...args: any[]) => any) | undefined;
"onUpdate:open"?: ((...args: any[]) => any) | undefined;
}>, {
size: string;
disabled: boolean;
open: boolean;
primary: boolean;
ariaLabel: string;
variant: string;
inline: number;
placement: string;
container: string | boolean | Element | Record<string, any>;
manualOpen: boolean;
forceMenu: boolean;
forceName: boolean;
menuName: string;
defaultIcon: string;
boundariesElement: Element;
}, {}, {
NcButton: {
new (...args: any[]): import('vue').CreateComponentPublicInstanceWithMixins<Readonly<{
alignment?: import('../NcButton/NcButton.vue').ButtonAlignment;
ariaLabel?: string;
disabled?: boolean;
download?: string | true;
href?: string;
pressed?: boolean | undefined;
size?: import('../NcButton/NcButton.vue').ButtonSize;
target?: string;
text?: string;
to?: import('vue-router').RouteLocationRaw;
type?: import('../NcButton/NcButton.vue').ButtonType;
variant?: import('../NcButton/NcButton.vue').ButtonVariant;
wide?: boolean;
}> & Readonly<{
onClick?: ((e: MouseEvent) => any) | undefined;
"onUpdate:pressed"?: ((pressed: boolean) => any) | undefined;
}>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
click: (e: MouseEvent) => any;
"update:pressed": (pressed: boolean) => any;
}, import('vue').PublicProps, {
size: import('../NcButton/NcButton.vue').ButtonSize;
type: import('../NcButton/NcButton.vue').ButtonType;
text: string;
alignment: import('../NcButton/NcButton.vue').ButtonAlignment;
ariaLabel: string;
download: string | true;
href: string;
pressed: boolean;
target: string;
to: import('vue-router').RouteLocationRaw;
variant: import('../NcButton/NcButton.vue').ButtonVariant;
}, false, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {}, any, import('vue').ComponentProvideOptions, {
P: {};
B: {};
D: {};
C: {};
M: {};
Defaults: {};
}, Readonly<{
alignment?: import('../NcButton/NcButton.vue').ButtonAlignment;
ariaLabel?: string;
disabled?: boolean;
download?: string | true;
href?: string;
pressed?: boolean | undefined;
size?: import('../NcButton/NcButton.vue').ButtonSize;
target?: string;
text?: string;
to?: import('vue-router').RouteLocationRaw;
type?: import('../NcButton/NcButton.vue').ButtonType;
variant?: import('../NcButton/NcButton.vue').ButtonVariant;
wide?: boolean;
}> & Readonly<{
onClick?: ((e: MouseEvent) => any) | undefined;
"onUpdate:pressed"?: ((pressed: boolean) => any) | undefined;
}>, {}, {}, {}, {}, {
size: import('../NcButton/NcButton.vue').ButtonSize;
type: import('../NcButton/NcButton.vue').ButtonType;
text: string;
alignment: import('../NcButton/NcButton.vue').ButtonAlignment;
ariaLabel: string;
download: string | true;
href: string;
pressed: boolean;
target: string;
to: import('vue-router').RouteLocationRaw;
variant: import('../NcButton/NcButton.vue').ButtonVariant;
}>;
__isFragment?: never;
__isTeleport?: never;
__isSuspense?: never;
} & import('vue').ComponentOptionsBase<Readonly<{
alignment?: import('../NcButton/NcButton.vue').ButtonAlignment;
ariaLabel?: string;
disabled?: boolean;
download?: string | true;
href?: string;
pressed?: boolean | undefined;
size?: import('../NcButton/NcButton.vue').ButtonSize;
target?: string;
text?: string;
to?: import('vue-router').RouteLocationRaw;
type?: import('../NcButton/NcButton.vue').ButtonType;
variant?: import('../NcButton/NcButton.vue').ButtonVariant;
wide?: boolean;
}> & Readonly<{
onClick?: ((e: MouseEvent) => any) | undefined;
"onUpdate:pressed"?: ((pressed: boolean) => any) | undefined;
}>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
click: (e: MouseEvent) => any;
"update:pressed": (pressed: boolean) => any;
}, string, {
size: import('../NcButton/NcButton.vue').ButtonSize;
type: import('../NcButton/NcButton.vue').ButtonType;
text: string;
alignment: import('../NcButton/NcButton.vue').ButtonAlignment;
ariaLabel: string;
download: string | true;
href: string;
pressed: boolean;
target: string;
to: import('vue-router').RouteLocationRaw;
variant: import('../NcButton/NcButton.vue').ButtonVariant;
}, {}, string, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, import('vue').ComponentProvideOptions> & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps & (new () => {
$slots: Readonly<{
default?: import('vue').Slot;
icon?: import('vue').Slot;
}> & {
default?: import('vue').Slot;
icon?: import('vue').Slot;
};
});
NcPopover: import('vue').DefineSetupFnComponent<Record<string, any>, {}, {}, Record<string, any> & {}, import('vue').PublicProps>;
}, {}, string, () => {
[x: symbol]: import('vue').ComputedRef<boolean> | ((returnFocus?: boolean) => Promise<void>);
}, true, {}, any>;
NcButton: {
new (...args: any[]): import('vue').CreateComponentPublicInstanceWithMixins<Readonly<{
alignment?: import('../NcButton/NcButton.vue').ButtonAlignment;
ariaLabel?: string;
disabled?: boolean;
download?: string | true;
href?: string;
pressed?: boolean | undefined;
size?: import('../NcButton/NcButton.vue').ButtonSize;
target?: string;
text?: string;
to?: import('vue-router').RouteLocationRaw;
type?: import('../NcButton/NcButton.vue').ButtonType;
variant?: import('../NcButton/NcButton.vue').ButtonVariant;
wide?: boolean;
}> & Readonly<{
onClick?: ((e: MouseEvent) => any) | undefined;
"onUpdate:pressed"?: ((pressed: boolean) => any) | undefined;
}>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
click: (e: MouseEvent) => any;
"update:pressed": (pressed: boolean) => any;
}, import('vue').PublicProps, {
size: import('../NcButton/NcButton.vue').ButtonSize;
type: import('../NcButton/NcButton.vue').ButtonType;
text: string;
alignment: import('../NcButton/NcButton.vue').ButtonAlignment;
ariaLabel: string;
download: string | true;
href: string;
pressed: boolean;
target: string;
to: import('vue-router').RouteLocationRaw;
variant: import('../NcButton/NcButton.vue').ButtonVariant;
}, false, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {}, any, import('vue').ComponentProvideOptions, {
P: {};
B: {};
D: {};
C: {};
M: {};
Defaults: {};
}, Readonly<{
alignment?: import('../NcButton/NcButton.vue').ButtonAlignment;
ariaLabel?: string;
disabled?: boolean;
download?: string | true;
href?: string;
pressed?: boolean | undefined;
size?: import('../NcButton/NcButton.vue').ButtonSize;
target?: string;
text?: string;
to?: import('vue-router').RouteLocationRaw;
type?: import('../NcButton/NcButton.vue').ButtonType;
variant?: import('../NcButton/NcButton.vue').ButtonVariant;
wide?: boolean;
}> & Readonly<{
onClick?: ((e: MouseEvent) => any) | undefined;
"onUpdate:pressed"?: ((pressed: boolean) => any) | undefined;
}>, {}, {}, {}, {}, {
size: import('../NcButton/NcButton.vue').ButtonSize;
type: import('../NcButton/NcButton.vue').ButtonType;
text: string;
alignment: import('../NcButton/NcButton.vue').ButtonAlignment;
ariaLabel: string;
download: string | true;
href: string;
pressed: boolean;
target: string;
to: import('vue-router').RouteLocationRaw;
variant: import('../NcButton/NcButton.vue').ButtonVariant;
}>;
__isFragment?: never;
__isTeleport?: never;
__isSuspense?: never;
} & import('vue').ComponentOptionsBase<Readonly<{
alignment?: import('../NcButton/NcButton.vue').ButtonAlignment;
ariaLabel?: string;
disabled?: boolean;
download?: string | true;
href?: string;
pressed?: boolean | undefined;
size?: import('../NcButton/NcButton.vue').ButtonSize;
target?: string;
text?: string;
to?: import('vue-router').RouteLocationRaw;
type?: import('../NcButton/NcButton.vue').ButtonType;
variant?: import('../NcButton/NcButton.vue').ButtonVariant;
wide?: boolean;
}> & Readonly<{
onClick?: ((e: MouseEvent) => any) | undefined;
"onUpdate:pressed"?: ((pressed: boolean) => any) | undefined;
}>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
click: (e: MouseEvent) => any;
"update:pressed": (pressed: boolean) => any;
}, string, {
size: import('../NcButton/NcButton.vue').ButtonSize;
type: import('../NcButton/NcButton.vue').ButtonType;
text: string;
alignment: import('../NcButton/NcButton.vue').ButtonAlignment;
ariaLabel: string;
download: string | true;
href: string;
pressed: boolean;
target: string;
to: import('vue-router').RouteLocationRaw;
variant: import('../NcButton/NcButton.vue').ButtonVariant;
}, {}, string, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, import('vue').ComponentProvideOptions> & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps & (new () => {
$slots: Readonly<{
default?: import('vue').Slot;
icon?: import('vue').Slot;
}> & {
default?: import('vue').Slot;
icon?: import('vue').Slot;
};
});
NcIconSvgWrapper: import('vue').DefineComponent<{
directional?: boolean;
inline?: boolean;
svg?: string;
name?: string;
path?: string;
size?: number | "auto";
}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{
directional?: boolean;
inline?: boolean;
svg?: string;
name?: string;
path?: string;
size?: number | "auto";
}> & Readonly<{}>, {
size: number | "auto";
name: string;
svg: string;
path: string;
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLSpanElement>;
NcLoadingIcon: import('vue').DefineComponent<{
appearance?: "auto" | "light" | "dark";
name?: string;
size?: number;
}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{
appearance?: "auto" | "light" | "dark";
name?: string;
size?: number;
}> & Readonly<{}>, {
size: number;
name: string;
appearance: "auto" | "light" | "dark";
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLSpanElement>;
NcUserStatusIcon: import('vue').DefineComponent<{
status?: "online" | "away" | "busy" | "dnd" | "invisible" | "offline";
} & {
user?: string;
ariaHidden?: boolean | "true" | "false";
}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
"update:status": (value: "offline" | "online" | "invisible" | "away" | "busy" | "dnd") => any;
}, string, import('vue').PublicProps, Readonly<{
status?: "online" | "away" | "busy" | "dnd" | "invisible" | "offline";
} & {
user?: string;
ariaHidden?: boolean | "true" | "false";
}> & Readonly<{
"onUpdate:status"?: ((value: "offline" | "online" | "invisible" | "away" | "busy" | "dnd") => any) | undefined;
}>, {
ariaHidden: boolean | "true" | "false";
user: string;
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
}, {
ClickOutside: import('vue').ObjectDirective;
}, string, import('vue').ComponentProvideOptions, true, {}, any>;
NcDashboardWidgetItem: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
id: {
type: (StringConstructor | NumberConstructor)[];
default: undefined;
};
targetUrl: {
type: StringConstructor;
default: undefined;
};
avatarUrl: {
type: StringConstructor;
default: undefined;
};
avatarUsername: {
type: StringConstructor;
default: undefined;
};
avatarIsNoUser: {
type: BooleanConstructor;
default: boolean;
};
overlayIconUrl: {
type: StringConstructor;
default: undefined;
};
mainText: {
type: StringConstructor;
required: true;
};
subText: {
type: StringConstructor;
default: string;
};
itemMenu: {
type: ObjectConstructor;
default: () => {};
};
forceMenu: {
type: BooleanConstructor;
default: boolean;
};
}>, {}, {
hovered: boolean;
}, {
item(): {
id: string | number | undefined;
targetUrl: string | undefined;
avatarUrl: string | undefined;
avatarUsername: string | undefined;
overlayIconUrl: string | undefined;
mainText: string;
subText: string;
};
gotMenu(): boolean;
gotOverlayIcon(): boolean | "" | undefined;
}, {
onLinkClick(event: any): void;
}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
id: {
type: (StringConstructor | NumberConstructor)[];
default: undefined;
};
targetUrl: {
type: StringConstructor;
default: undefined;
};
avatarUrl: {
type: StringConstructor;
default: undefined;
};
avatarUsername: {
type: StringConstructor;
default: undefined;
};
avatarIsNoUser: {
type: BooleanConstructor;
default: boolean;
};
overlayIconUrl: {
type: StringConstructor;
default: undefined;
};
mainText: {
type: StringConstructor;
required: true;
};
subText: {
type: StringConstructor;
default: string;
};
itemMenu: {
type: ObjectConstructor;
default: () => {};
};
forceMenu: {
type: BooleanConstructor;
default: boolean;
};
}>> & Readonly<{}>, {
id: string | number;
forceMenu: boolean;
avatarUrl: string;
targetUrl: string;
avatarUsername: string;
avatarIsNoUser: boolean;
overlayIconUrl: string;
subText: string;
itemMenu: Record<string, any>;
}, {}, {
NcAvatar: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
url: {
type: StringConstructor;
default: undefined;
};
iconClass: {
type: StringConstructor;
default: undefined;
};
user: {
type: StringConstructor;
default: undefined;
};
hideStatus: {
type: BooleanConstructor;
default: boolean;
};
verboseStatus: {
type: BooleanConstructor;
default: boolean;
};
preloadedUserStatus: {
type: ObjectConstructor;
default: undefined;
};
isGuest: {
type: BooleanConstructor;
default: boolean;
};
displayName: {
type: StringConstructor;
default: undefined;
};
size: {
type: NumberConstructor;
default: number;
};
noPlaceholder: {
type: BooleanConstructor;
default: boolean;
};
disableTooltip: {
type: BooleanConstructor;
default: boolean;
};
disableMenu: {
type: BooleanConstructor;
default: boolean;
};
tooltipMessage: {
type: StringConstructor;
default: null;
};
isNoUser: {
type: BooleanConstructor;
default: boolean;
};
menuContainer: {
type: (ObjectConstructor | BooleanConstructor | StringConstructor | {
new (): Element;
prototype: Element;
})[];
default: string;
};
}>, {
isDarkTheme: Readonly<import('vue').Ref<boolean, boolean>>;
}, {
avatarUrlLoaded: null;
avatarSrcSetLoaded: null;
userDoesNotExist: boolean;
isAvatarLoaded: boolean;
isMenuLoaded: boolean;
contactsMenuLoading: boolean;
contactsMenuData: {};
contactsMenuActions: never[];
contactsMenuOpenState: boolean;
}, {
avatarAriaLabel(): string | undefined;
canDisplayUserStatus(): boolean;
showUserStatusIconOnAvatar(): false | null;
userIdentifier(): string | undefined;
isUserDefined(): boolean;
isDisplayNameDefined(): boolean;
isUrlDefined(): boolean;
hasMenu(): boolean;
showInitials(): boolean;
avatarStyle(): {
'--avatar-size': string;
lineHeight: string | number;
fontSize: string;
};
initialsWrapperStyle(): {
backgroundColor: string;
};
initialsStyle(): {
color: string;
};
tooltip(): string | null | undefined;
initials(): string;
menu(): {
ncActionComponent: import('vue').DefineComponent<{}, {}, {}, {}, {}, {
mixins: {
beforeUpdate(): void;
data(): {
text: any;
};
computed: {
isLongText(): any;
};
methods: {
getText(): any;
};
}[];
props: {
icon: {
type: StringConstructor;
default: string;
};
name: {
type: StringConstructor;
default: string;
};
title: {
type: StringConstructor;
default: string;
};
closeAfterClick: {
type: BooleanConstructor;
default: boolean;
};
ariaLabel: {
type: StringConstructor;
default: null;
};
};
inject: {
closeMenu: {
from: import('vue').InjectionKey<(returnFocus: boolean) => void>;
};
};
emits: string[];
created(): void;
computed: {
isIconUrl(): boolean;
};
methods: {
onClick(event: any): void;
};
}, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
ncActionComponentProps: {};
iconSvg: string | undefined;
text: string;
}[] | {
ncActionComponent: import('vue').DefineSetupFnComponent<Record<string, any>, {}, {}, Record<string, any> & {}, import('vue').PublicProps> | import('vue').DefineComponent<import('vue').ExtractPropTypes<{
to: {
type: (ObjectConstructor | StringConstructor)[];
required: true;
};
}>, {}, {}, {}, {}, {
mixins: {
beforeUpdate(): void;
data(): {
text: any;
};
computed: {
isLongText(): any;
};
methods: {
getText(): any;
};
}[];
props: {
icon: {
type: StringConstructor;
default: string;
};
name: {
type: StringConstructor;
default: string;
};
title: {
type: StringConstructor;
default: string;
};
closeAfterClick: {
type: BooleanConstructor;
default: boolean;
};
ariaLabel: {
type: StringConstructor;
default: null;
};
};
inject: {
closeMenu: {
from: import('vue').InjectionKey<(returnFocus: boolean) => void>;
};
};
emits: string[];
created(): void;
computed: {
isIconUrl(): boolean;
};
methods: {
onClick(event: any): void;
};
}, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
to: {
type: (ObjectConstructor | StringConstructor)[];
required: true;
};
}>> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
ncActionComponentProps: {
to: string;
icon: any;
href?: undefined;
} | {
href: any;
icon: any;
to?: undefined;
};
text: any;
}[];
}, {
t: (original: string, placeholders?: Record<string, string | number>) => string;
handleUserStatusUpdated(state: any): void;
toggleMenu(event: KeyboardEvent | MouseEvent): Promise<void>;
closeMenu(): void;
fetchContactsMenu(): Promise<void>;
loadAvatarUrl(): void;
avatarUrlGenerator(user: string, size: number): string;
updateImageIfValid(url: string, srcset?: any[]): void;
}, {
data(): {
hasStatus: boolean;
userStatus: {
status: null;
message: null;
icon: null;
};
};
methods: {
fetchUserStatus(userId: string): Promise<void>;
setUserStatus({ status, message, icon }: string): void;
};
}, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
url: {
type: StringConstructor;
default: undefined;
};
iconClass: {
type: StringConstructor;
default: undefined;
};
user: {
type: StringConstructor;
de