import type { ComputedRef, ExtractPropTypes,  PropType } from 'vue';
import type { MaybeRef } from '../../utils';
export declare const SHAPES: readonly ["tile", "rounded-sm", "rounded", "rounded-lg", "pill", "circle"];
export declare type ShapeProps = ExtractPropTypes<ReturnType<typeof makeShapeProps>>;
export declare const makeShapeProps: <Defaults extends {
    shape?: unknown;
} = {}>(defaults?: Defaults | undefined) => {
    shape: unknown extends Defaults["shape"] ? {
        type: PropType<"tile" | "rounded-sm" | "rounded" | "rounded-lg" | "pill" | "circle">;
        default: string;
    } : Omit<{
        type: PropType<"tile" | "rounded-sm" | "rounded" | "rounded-lg" | "pill" | "circle">;
        default: string;
    }, "default" | "type"> & {
        type: PropType<unknown extends Defaults["shape"] ? "tile" | "rounded-sm" | "rounded" | "rounded-lg" | "pill" | "circle" : NonNullable<"tile" | "rounded-sm" | "rounded" | "rounded-lg" | "pill" | "circle"> | Defaults["shape"]>;
        default: unknown extends Defaults["shape"] ? "tile" | "rounded-sm" | "rounded" | "rounded-lg" | "pill" | "circle" : NonNullable<"tile" | "rounded-sm" | "rounded" | "rounded-lg" | "pill" | "circle"> | Defaults["shape"];
    };
};
export declare function useShape(props: MaybeRef<ShapeProps>, name?: string): {
    shapeClasses: ComputedRef<string | null>;
};
//# sourceMappingURL=index.d.ts.map