import { ExtractPropTypes } from 'vue'; import { ISharedRenderlessFunctionParams, ISharedRenderlessParamUtils } from './shared.type.js'; declare const $constants: { ITEM_NAME: string; }; declare const userHeadProps: { _constants: { type: ObjectConstructor; default: () => { ITEM_NAME: string; }; }; /** * @property {Boolean} [min=false] - 小尺寸模式 */ min: BooleanConstructor; /** * @property {Boolean} [round=true] - 圆形模式 */ round: BooleanConstructor; /** * @property {String} [color=#ffffff] - 文字颜色 */ color: { type: StringConstructor; default: string; }; /** * @property {String} [backgroundColor=#BBBBBB] - 背景色 */ backgroundColor: { type: StringConstructor; default: string; }; /** * @property {String} [type=label] - 头像类型,icon|image|label 可选 */ type: { type: StringConstructor; default: string; validator: (value: string) => boolean; }; /** * @property {String} - 头像资源 * type=icon 时为图标组件,type=label时为字体串,type=image时为资源路径 */ value: { type: (StringConstructor | ObjectConstructor)[]; default: null; }; /** * @property {String} - 头像资源 * type=icon 时为图标组件,type=label时为字体串,type=image时为资源路径 */ modelValue: { type: (StringConstructor | ObjectConstructor)[]; default: null; }; /** * @property {Number} - 消息计数 */ messageTotal: NumberConstructor; /** * @property {String} [messageType=details] - 消息类型 details|basic 可选 */ messageType: { type: StringConstructor; default: string; validator: (value: string) => boolean; }; /** * @property {Number} [messageUpperLimit=0] - 消息显示上限 */ messageUpperLimit: { type: NumberConstructor; default: number; }; size: { type: NumberConstructor; default: number; }; tiny_mode: StringConstructor; tiny_mode_root: BooleanConstructor; tiny_template: (FunctionConstructor | ObjectConstructor)[]; tiny_renderless: FunctionConstructor; tiny_theme: StringConstructor; tiny_mcp_config: ObjectConstructor; tiny_chart_theme: ObjectConstructor; }; /** * Copyright (c) 2022 - present TinyVue Authors. * Copyright (c) 2022 - present Huawei Cloud Computing Technologies Co., Ltd. * * Use of this source code is governed by an MIT-style license. * * THE OPEN SOURCE SOFTWARE IN THIS PRODUCT IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, * BUT WITHOUT ANY WARRANTY, WITHOUT EVEN THE IMPLIED WARRANTY OF MERCHANTABILITY OR FITNESS FOR * A PARTICULAR PURPOSE. SEE THE APPLICABLE LICENSES FOR MORE DETAILS. * */ declare const computedStyle: ({ state, props }: Pick) => () => { fill: string; color: string; backgroundColor: string; backgroundImage: string; }; declare const computedMessage: ({ props }: Pick) => () => string; declare const computedFontSize: ({ props, state, mode }: Pick) => () => { fontSize: string; }; declare const computedLabel: ({ state, props }: Pick) => () => any; declare const getInternalValue: ({ props }: Pick) => () => string | Record; interface IUserHeadState { internalValue: string | Record; label: string; style: ReturnType>; message: string; fontSize: { fontSize: string; }; size: number; color: string; backgroundColor: string; } type IUserHeadProps = ExtractPropTypes; type IUserHeadConstants = typeof $constants; type IUserHeadRenderlessParams = ISharedRenderlessFunctionParams & { api: IUserHeadApi; state: IUserHeadState; props: IUserHeadProps; }; interface IUserHeadApi { state: IUserHeadState; computedLabel: ReturnType; computedStyle: ReturnType; computedMessage: ReturnType; computedFontSize: ReturnType; getInternalValue: ReturnType; handleClick: (event: Event) => void; mouseEnter: (event: Event) => void; } type IUserHeadRenderlessParamUtils = ISharedRenderlessParamUtils; export { IUserHeadApi, IUserHeadConstants, IUserHeadProps, IUserHeadRenderlessParamUtils, IUserHeadRenderlessParams, IUserHeadState };