import { type ComponentCustomOptions } from 'vue'; import type { SetupContext } from 'vue'; import type { VueCons } from './index'; export type Cons = VueCons; type SetupFunction = (this: void, props: Readonly, ctx: SetupContext) => T | Promise; export type OptionSetupFunction = SetupFunction; export type ComponentSetupFunction = SetupFunction>; declare function ComponentOption(cons: Cons, extend?: any): any; type ComponentOption = { name?: string; emits?: string[]; provide?: Record | Function; components?: Record; directives?: Record; inheritAttrs?: boolean; expose?: string[]; render?: Function; modifier?: (raw: any) => any; options?: ComponentCustomOptions & Record; template?: string; mixins?: any[]; setup?: ComponentSetupFunction; }; type ComponentConsOption = Cons | ComponentOption; export declare function ComponentBase(arg: ComponentConsOption): any; export declare function Component(arg: ComponentConsOption): any; export {}; //# sourceMappingURL=component.d.ts.map