import type { CustomEvent } from "../../constructors/events"; import type { UserInfoResult } from "../../apis/open/user-info/UserInfoResult"; import type { AuthorizedUserInfoResult } from "../../apis/open/user-info/AuthorizedUserInfoResult"; import { BaseProps } from "../props"; declare const sizes: readonly [ "default", "tiny", "mini", "small", "medium", "large", "huge" ]; declare const types: readonly [ "default", "primary", "warn" ]; declare const formTypes: readonly [ "submit", "reset" ]; declare const openTypes: readonly [ "share", "getPhoneNumber", "getUserInfo", "launchApp", "openSetting", "favorite", "openProfile", "openUserProfile", "videoGenerate", "openChatGroupProfile", "videoPublish", "getUserExtendInfo", "addShortcut", "contact", "openWebUrl" ]; declare const langs: readonly [ "en", "zh_CN", "zh_TW" ]; /** * @value 'default' 默认大小 * @value 'tiny' 特小尺寸 * @value 'mini' 超小尺寸 * @value 'small' 小尺寸 * @value 'medium' 中尺寸 * @value 'large' 大尺寸 * @value 'huge' 超大尺寸 */ declare type ButtonSize = typeof sizes[number]; /** * @value 'primary' #FE3666 * @value 'default' #FFFFFF * @value 'warn' #FB5858 */ declare type ButtonType = typeof types[number]; /** * @value 'submit' 提交表单 * @value 'reset' 重置表单 */ declare type ButtonFormType = typeof formTypes[number]; /** * @value 'share' 触发用户转发,使用前建议先阅读使用指引 * @value 'getPhoneNumber' 获取用户手机号,可以从 `bindgetphonenumber` 回调中获取到用户信息 * @value 'getUserInfo' 获取用户信息,可以从 `bindgetuserinfo` 回调中获取到用户信息 * @value 'launchApp' 打开APP,可以通过app-parameter属性设定向APP传的参数 * @value 'openSetting' 打开授权设置页 * @value 'favorite' 触发用户收藏 * @value 'openProfile' 触发打开用户主页,配合 `user` (userId/kwaiId) 使用 * @value 'openUserProfile' 触发打开用户主页,配合 `user` (openId) 使用 * @value 'videoGenerate' 生成快手分享视频 MINIMUM__KMA__VERSION(1.46.0) * @value 'openChatGroupProfile' 点击打开对应群聊 * @value 'videoPublish' 发布快手视频 * @value 'getUserExtendInfo' 获取用户额外身份信息,配合 `shareUserId` (openId) 使用 * @value 'addShortcut' 添加到桌面,可以从 `bindaddshortcut` 监听添加快捷方式的回调 * @value 'contact' 打开客服会话 */ declare type ButtonOpenType = typeof openTypes[number]; /** * @value 'en' 英文 * @value 'zh_CN' 简体中文 * @value 'zh_TW' 繁体中文 */ declare type ButtonLang = typeof langs[number]; /** * 按钮 * @version {"kma":"1.1.0","ide":"1.22.0"} * */ export declare interface ButtonProps extends BaseProps { /** * 按钮的大小 */ size?: ButtonSize; /** * 按钮的样式类型 */ type?: ButtonType; /** * 按钮是否镂空,背景色透明 */ plain?: boolean; /** * 是否禁用 */ disabled?: boolean; /** * 名称前是否带 loading 图标 */ loading?: boolean; /** * 用于 [form](./form) 组件,点击分别会触发 [form](./form) 组件的 submit/reset 事件 */ formType?: ButtonFormType; /** * 开放能力 */ openType?: ButtonOpenType; /** * 指定按钮按下去的样式类。当 `hover-class="none"` 时,没有点击态效果 */ hoverClass?: string; /** * 指定是否阻止本节点的祖先节点出现点击态 * @alpha */ hoverStopPropagation?: boolean; /** * 按住后多久出现点击态,单位毫秒 */ hoverStartTime?: number; /** * 手指松开后点击态保留时间,单位毫秒 */ hoverStayTime?: number; /** * 指定返回用户信息的语言,zh_CN 简体中文,zh_TW 繁体中文,en 英文。 * @alpha */ lang?: ButtonLang; /** * 要跳转的号主页,可以传快手号或者快手 id,open-type="openProfile" 时有效 */ user?: string; /** * 按钮是否自动适应父元素宽度 */ fit: boolean; /** * 打开 APP 时,向 APP 传递的参数,open-type="launchApp" 时有效 * @alpha */ showMessageCard?: boolean; /** * 群聊号,open-type 为openChatGroupProfile时有效 */ chatGroupNumber?: string; /** * 分享用户的openid,open-type为getUserExtendInfo时有效 */ shareUserId?: string; /** * 用户点击该按钮时,会返回获取到的用户信息,回调的 detail 数据与 `ks.getUserInfo` 返回的一致,open-type="getUserInfo" 时有效 * @alpha */ onGetUserInfo?: (event: CustomEvent) => void; /** * 获取用户手机号回调,open-type="getPhoneNumber" 时有效 * @alpha */ onGetPhoneNumber?: (event: CustomEvent>) => void; /** * 当使用开放能力时,发生错误的回调,open-type="launchApp" 时有效 * @alpha */ onError?: (event: CustomEvent>) => void; /** * 在打开授权设置页后回调,open-type="openSetting" 时有效 * @alpha */ onOpenSetting?: (event: CustomEvent>) => void; /** * 打开 APP 成功的回调,open-type="launchApp" 时有效 * @alpha */ onLaunchApp?: (event: CustomEvent>) => void; /** * 添加到桌面回调,open-type="addShortcut" 时有效 */ onAddShortcut?: (event: CustomEvent>) => void; } export {};