import { AsTag, ComponentProps, Options, SVGAttributesWithMotionValues, SetMotionValueType } from '../../types';
import { IntrinsicElementAttributes } from 'vue';
export interface MotionProps<T extends AsTag = 'div', K = unknown> extends Omit<Options<K>, 'motionConfig' | 'layoutGroup'> {
    as?: T;
    asChild?: boolean;
    whileDrag?: Options['whileDrag'];
    whileHover?: Options['whileHover'];
    whilePress?: Options['whilePress'];
    whileInView?: Options['whileInView'];
    whileFocus?: Options['whileFocus'];
    forwardMotionProps?: boolean;
    ignoreStrict?: boolean;
}
type __VLS_PrettifyLocal<T> = {
    [K in keyof T]: T[K];
} & {};
export type MotionComponent = <T extends AsTag = 'div', K = any>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>['props'], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, 'attrs' | 'emit' | 'slots'>>, __VLS_expose?: NonNullable<Awaited<typeof __VLS_setup>>['expose'], __VLS_setup?: Promise<{
    props: __VLS_PrettifyLocal<Pick<Partial<{}> & Omit<{} & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps & Readonly<import('vue').ExtractPropTypes<{}>>, never>, never> & (Omit<T extends keyof IntrinsicElementAttributes ? SetMotionValueType<IntrinsicElementAttributes, keyof SVGAttributesWithMotionValues>[T] : ComponentProps<T>, keyof Options<any> | 'asChild'> & MotionProps<T, K>)> & import('vue').PublicProps;
    expose: (exposed: import('vue').ShallowUnwrapRef<{}>) => void;
    attrs: any;
    slots: {
        default?: (_: {}) => any;
    };
    emit: {};
}>) => import('vue').VNode<import('vue').RendererNode, import('vue').RendererElement, {
    [key: string]: any;
}> & {
    __ctx?: Awaited<typeof __VLS_setup>;
};
export {};
