import { IStyleFunctionOrObject, IStyleSet } from '@uifabric/merge-styles';
import Vue from 'vue';
export interface IPropsWithStyles<TStyleProps, TStyleSet extends IStyleSet<TStyleSet>> {
    styles?: IStyleFunctionOrObject<TStyleProps, TStyleSet>;
    className?: string;
}
export interface ICustomizableProps {
    /**
     * Name of scope, which can be targeted using the Customizer.
     */
    scope: string;
    /**
     * List of fields which can be customized.
     * @defaultvalue [ 'theme', 'styles' ]
     */
    fields?: string[];
}
export declare function styled<TComponentProps extends IPropsWithStyles<TStyleProps, TStyleSet>, TStyleProps, TStyleSet extends IStyleSet<TStyleSet>>(Component: any, baseStyles: IStyleFunctionOrObject<any, any>, getProps?: (props: any) => Partial<any>, customizable?: ICustomizableProps, pure?: boolean): import("vue/types/vue").ExtendedVue<Vue, {
    $theme: import("@uifabric/styling").ITheme;
}, unknown, unknown, Record<never, any>>;
//# sourceMappingURL=styled.d.ts.map