import { Meta, StoryFn } from '@storybook/react';
import { ComponentType } from 'react';
import { Background } from './types';
export declare const getFunctionType: (functions: {
    func: (...a: any[]) => any;
    name: string;
}[], argTypeOptions?: {
    type?: 'radio';
    addUndefined: boolean;
}) => {
    control: {
        type: "radio";
    };
    options: {
        (...args: any[]): any;
        toString(): string;
    }[];
    defaultValue: {
        (...args: any[]): any;
        toString(): string;
    };
};
declare type InputType = Required<Required<Meta<{
    p: any;
}>>['argTypes']>['p'];
declare type Values = 'String' | 'Number' | 'Boolean' | 'Symbol';
declare type FunctionalValues = 'FunctionRadio' | 'MuiProps' | 'RestProps';
export declare const ArgTypes: Record<Values, InputType> & Record<FunctionalValues, (...args: any[]) => InputType>;
declare type GetMetaProps<C extends ComponentType | Record<string, any>> = {
    sourcePath?: string;
    designPath?: string;
    description?: string;
    generateImport?: boolean;
    argTypes?: Meta<C>['argTypes'];
    args?: Meta<C>['args'];
    isDeprecated?: boolean;
    isExperimental?: boolean;
    defaultBackground?: Background;
    componentExportName?: string;
};
export declare const mutateMeta: <Component extends ComponentType<any> | Record<string, any>>(meta: Meta<Component>, props: GetMetaProps<Component>) => void;
declare type PartialStory = {
    name?: string;
    description?: string;
    fullWidth?: boolean;
    background?: Background;
};
export declare const mutateStory: (story: StoryFn, { name, description, fullWidth, background }: PartialStory) => void;
export {};
//# sourceMappingURL=utils.d.ts.map