import type { Component } from 'vue'; /** * Vue2 Prop 定义(与 Vue 2 Options API 的 props 字段一致) */ export type Vue2PropDefinition = Record; export interface Vue2WrapperConfig { /** 深度变化时卸载并重新 mount 内层 Vue3 app(与历史 AIBluekingV2 行为一致) */ deepWatchProps?: string[]; /** Vue3 组件 emit 名称(kebab-case),将桥接为 onXxx 监听 */ emitNames: string[]; /** 从 Vue3 子组件实例同步到 Vue2 this 的键(函数会 bind,其余直接赋值如 Ref) */ exposeKeys: string[]; /** Vue2 methods(例如 mounted 前的占位实现) */ methods?: Record unknown>; name: string; /** Vue2 侧 props 定义 */ props: Vue2PropDefinition; /** 需要从 Vue2 $scopedSlots 透传到 Vue3 的插槽名 */ slots?: string[]; } /** * 创建在 Vue2 环境中用 Vue3 createApp 渲染 Vue3 组件的桥接组件 */ export declare function createVue2Wrapper(Vue3Component: Component, config: Vue2WrapperConfig): unknown; /** * 将 emit 名转为 Vue3 vnode 上的 onXxx 属性名,例如 send-message -> onSendMessage */ export declare function emitNameToListenerProp(emitName: string): string; //# sourceMappingURL=vue2-wrapper.d.ts.map