/// import eventBus from "./utils/eventBus"; import datetime from "./utils/datetime"; import EmojiHelper from "./utils/emojiHelper"; import { MESSAGE_TYPE, RTC_STATE, TERMINAL_TYPE, MESSAGE_STATUS } from "./utils/enums"; import * as dom from "./utils/dom"; import messageType from "./utils/messageType"; import RecorderApp from "./utils/recorderApp"; import RecorderH5 from "./utils/recorderH5"; import Requester from "./utils/requester"; import * as url from "./utils/url"; import { useDynamicRefs } from "./utils/useDynamicRefs"; import { webSocket, type WebSocket } from "./utils/websocket"; import type { RtcMode, RtcInfo, Chat, Message, Friend, OnlineTerminal, MenuItem, WebRTCMessage, GroupMember, Group, UploadImageResponse, SubmitItem, ImageItem, FileItem, ApiResponse, RecorderError, UploadRecorderFileResponse, UploadRecorderFileResult, RecorderFile, UserInfo, Response } from './libs'; import validator, { PasswordValidationOptions, PasswordValidationResult, ValidatorModule, ValidationResult, isNumber, isInteger, isMobilePhone, isEmail, isChineseIDCard, validatePassword } from './utils/validator' import * as base64 from "./utils/base64" import { Avatar } from './components/avatar' import type { AvatarProps, AvatarEmits, AvatarSlots } from './components/avatar' import { Badge } from './components/badge' import type { BadgeProps, BadgeEmits, BadgeMethods } from './components/badge' import { Button } from './components/button' import type { ButtonType, ButtonSize, ButtonShape, ButtonFormType, ButtonOpenType, ButtonIconPosition, ButtonTextSize, ButtonProps, ButtonEmits } from './components/button' import { Card } from './components/card' import type { CardProps, CardAction, CardEmits, CardSlots } from './components/card' import { CellGroup } from './components/cell-group' import type { CellGroupSlots } from './components/cell-group' import { Cell } from './components/cell' import type { CellType, CellSize, TitleSize, IconPosition, CellProps, CellEmits } from './components/cell' import { ChatItem } from './components/chat-item' import type { ChatItemProps, ChatItemEmits } from './components/chat-item' import { CheckboxGroup } from './components/checkbox-group' import type { CheckboxGroupProps, CheckboxGroupEmits, CheckboxGroupContext } from './components/checkbox-group' import { Checkbox } from './components/checkbox' import type { CheckboxSize, CheckboxType, CheckboxDirection, BadgePosition, BadgeType, CheckboxProps, CheckboxBadgeProps, CheckboxEmits } from './components/checkbox' import { Col } from './components/col' import type { ColProps, ColEmits } from './components/col' import { ContextMenu } from './components/context-menu' import type { ContextMenuProps, ContextMenuEmits, ContextMenuSlots } from './components/context-menu' import { Dialog } from './components/dialog' import type { DialogType, DialogProps, DialogEmits, DialogMethods } from './components/dialog' import { DoubleTapView } from './components/double-tap-view' import type { DoubleTapViewProps, DoubleTapViewEmits, DoubleTapViewExpose } from './components/double-tap-view' import { EmojiPicker } from './components/emoji-picker' import type { Emoji, EmojiCategory, EmojiPickerProps, EmojiPickerEmits, EmojiPickerSlots } from './components/emoji-picker' import { FormItem } from './components/form-item' import type { FormItemProps, FormItemEmits } from './components/form-item' import { Form } from './components/form' import type { FormLayout, FormSize, LabelAlign, FormModel, FormErrors, FormRule, ValidateResult, FormProps, FormEmits, FormContext } from './components/form' import { FriendItem } from './components/friend-item' import type { FriendItemProps, FriendItemEmits, FriendItemSlots } from './components/friend-item' import { GroupItem } from './components/group-item' import type { GroupItemProps, GroupItemEmits } from './components/group-item' import { GroupMemberSelector } from './components/group-member-selector' import type { GroupMember, GroupMemberSelectorProps, GroupMemberSelectorEmits } from './components/group-member-selector' import { GroupRtcJoin } from './components/group-rtc-join' import type { RtcInfo, GroupRtcJoinProps, GroupRtcJoinEmits } from './components/group-rtc-join' import { Icon } from './components/icon' import type { IconType, IconSize, RotateDirection, IconProps, IconExpose, IconEmits, IconSlots } from './components/icon' import { Input } from './components/input' import type { InputType, InputSize, ClearTrigger, FormatType, InputProps, InputEmits, FormatConfig, StatusColors } from './components/input' import { Link } from './components/link' import type { LinkProps } from './components/link' import { Loading } from './components/loading' import type { LoadingProps, LoadingSlots } from './components/loading' import { MentionPicker } from './components/mention-picker' import type { MentionPickerProps, MentionPickerEmits } from './components/mention-picker' import { MessageAction } from './components/message-action' import type { MessageActionItem, MessageActionProps, MessageActionEmits, MessageActionSlots, MessageActionExpose } from './components/message-action' import { MessageItem } from './components/message-item' import type { MessageItemProps, MessageItemEmits } from './components/loading' import { MessageList } from './components/message-list' import type { TypingUser, ActionMenuAction, MessageListProps, MessageListEvents, MessageListSlots } from './components/message-list' import { Modal } from './components/modal' import type { ModalProps, ModalEmits, ModalMethods } from './components/modal' import { NavBar } from './components/nav-bar' import type { NavBarAction, NavBarProps, NavBarEvents, NavBarSlots } from './components/nav-bar' import { Parse } from './components/parse' import type { LinkData, ParseOptions, ParseProps, ParseEmits } from './components/parse' import { Popup } from './components/popup' import type { PopupProps, PopupEmits, PopupMethods } from './components/popup' import { ReadReceipt } from './components/read-receipt' import type { ReadReceiptProps, ReadReceiptEmits, Member } from './components/read-receipt' import { Row } from './components/row' import type { RowProps, RowEmits } from './components/row' import { Search } from './components/search' import type { SearchProps, SearchEmits } from './components/search' import { Select } from './components/select' import type { SelectMode, SelectSize, SelectOption, SelectOptionGroup, SelectProps, SelectEmits, DropdownState, VirtualScrollState } from './components/select' import { Sku } from './components/sku' import type { SkuAttr, SkuAttrValue, SkuSpec, SkuValue, SkuItem, SkuGoodsInfo, SelectedSku, SkuProps, SkuEmits } from './components/sku' import { Stepper } from './components/stepper' import type { StepperProps, StepperEmits } from './components/stepper' import { TabsTabPane } from './components/tabs-tab-pane' import type { TabsTabPaneProps } from './components/tabs-tab-pane' import { Tabs } from './components/tabs' import type { TabItem, TabsProps, TabsEmits } from './components/tabs' import { Upload } from './components/upload' import type { UploadFile, UploadFileStatus, UploadProps, UploadMethods } from './components/upload' import { VirtualList } from './components/virtual-list' import type { LoadingStatus, ScrollAlign, ScrollToItemOptions, VirtualListItem, ScrollEvent, VirtualListProps, VirtualListEmits, VirtualListSlots, VirtualListExposed } from './components/virtual-list' import { VoiceInput } from './components/voice-input' import type { VoiceInputEmits } from './components/voice-input' declare module 'im-ui-mobile' { export function install(): void interface Config { baseUrl: string; emojiUrl: string; } function getConfig(): Config; // 导出类型 export type { PasswordValidationOptions, PasswordValidationResult, ValidatorModule, ValidationResult, RtcMode, RtcInfo, Chat, Message, Friend, OnlineTerminal, MenuItem, WebRTCMessage, GroupMember, Group, UploadImageResponse, SubmitItem, ImageItem, FileItem, ApiResponse, RecorderError, UploadRecorderFileResponse, UploadRecorderFileResult, RecorderFile, UserInfo, Response, WebSocket } // 导出函数/实例 export { isNumber, isInteger, isMobilePhone, isEmail, isChineseIDCard, validatePassword, getConfig, eventBus, datetime, EmojiHelper, dom, messageType, Requester, url, useDynamicRefs, webSocket, RecorderApp, RecorderH5, validator, base64, // 枚举类型 RTC_STATE, MESSAGE_TYPE, TERMINAL_TYPE, MESSAGE_STATUS } // 导出组件 export { Avatar, Badge, Button, Card, CellGroup, Cell, ChatItem, CheckboxGroup, Checkbox, Col, ContextMenu, Dialog, DoubleTapView, EmojiPicker, FormItem, GroupItem, GroupMemberSelector, GroupRtcJoin, Icon, Input, Link, Loading, MentionPicker, MessageAction, MessageItem, MessageList, Modal, NavBar, Parse, Popup, ReadReceipt, Row, Search, Select, Sku, Stepper, TabsTabPane, Tabs, Upload, VirtualList, VoiceInput } // 导出组件类型 export type { AvatarProps, AvatarEmits, AvatarSlots, BadgeProps, BadgeEmits, BadgeMethods, ButtonType, ButtonSize, ButtonShape, ButtonFormType, ButtonOpenType, ButtonIconPosition, ButtonTextSize, ButtonProps, ButtonEmits, CardProps, CardAction, CardEmits, CardSlots, CellGroupSlots, CellType, CellSize, TitleSize, IconPosition, CellProps, CellEmits, ChatItemProps, ChatItemEmits, CheckboxGroupProps, CheckboxGroupEmits, CheckboxGroupContext, CheckboxSize, CheckboxType, CheckboxDirection, BadgePosition, BadgeType, CheckboxProps, CheckboxBadgeProps, CheckboxEmits, ColProps, ColEmits, ContextMenuProps, ContextMenuEmits, ContextMenuSlots, DialogType, DialogProps, DialogEmits, DialogMethods, DoubleTapViewProps, DoubleTapViewEmits, DoubleTapViewExpose, Emoji, EmojiCategory, EmojiPickerProps, EmojiPickerEmits, EmojiPickerSlots, FormItemProps, FormItemEmits, FormLayout, FormSize, LabelAlign, FormModel, FormErrors, FormRule, ValidateResult, FormProps, FormEmits, FormContext, FriendItemProps, FriendItemEmits, FriendItemSlots, GroupItemProps, GroupItemEmits, GroupMember, GroupMemberSelectorProps, GroupMemberSelectorEmits, RtcInfo, GroupRtcJoinProps, GroupRtcJoinEmits, IconType, IconSize, RotateDirection, IconProps, IconExpose, IconEmits, IconSlots, InputType, InputSize, ClearTrigger, FormatType, InputProps, InputEmits, FormatConfig, StatusColors, LinkProps, LoadingProps, LoadingSlots, MentionPickerProps, MentionPickerEmits, MessageActionItem, MessageActionProps, MessageActionEmits, MessageActionSlots, MessageActionExpose, MessageItemProps, MessageItemEmits, TypingUser, ActionMenuAction, MessageListProps, MessageListEvents, MessageListSlots, ModalProps, ModalEmits, ModalMethods, NavBarAction, NavBarProps, NavBarEvents, NavBarSlots, LinkData, ParseOptions, ParseProps, ParseEmits, PopupProps, PopupEmits, PopupMethods, ReadReceiptProps, ReadReceiptEmits, Member, RowProps, RowEmits, SearchProps, SearchEmits, SelectMode, SelectSize, SelectOption, SelectOptionGroup, SelectProps, SelectEmits, DropdownState, VirtualScrollState, SkuAttr, SkuAttrValue, SkuSpec, SkuValue, SkuItem, SkuGoodsInfo, SelectedSku, SkuProps, SkuEmits, StepperProps, StepperEmits, TabsTabPaneProps, TabItem, TabsProps, TabsEmits, UploadFileStatus, UploadFile, UploadProps, UploadMethods, UploadEmits, LoadingStatus, ScrollAlign, ScrollToItemOptions, VirtualListItem, ScrollEvent, VirtualListProps, VirtualListEmits, VirtualListSlots, VirtualListExposed, VoiceInputEmits } }