vuetify
Version:
Vue Material Component Framework
29 lines (28 loc) • 1.54 kB
TypeScript
import type { ComputedGetter, PropType } from 'vue';
import type { VIconBtnSizes } from "../labs/VIconBtn/VIconBtn.js";
export interface IconSizeProps {
iconSize?: VIconBtnSizes | number | string;
iconSizes: [VIconBtnSizes, number][];
}
export declare const makeIconSizeProps: <Defaults extends {
iconSize?: unknown;
iconSizes?: unknown;
} = {}>(defaults?: Defaults | undefined) => {
iconSize: unknown extends Defaults["iconSize"] ? PropType<string | number> : {
type: PropType<unknown extends Defaults["iconSize"] ? string | number : string | number | Defaults["iconSize"]>;
default: unknown extends Defaults["iconSize"] ? string | number : NonNullable<string | number> | Defaults["iconSize"];
};
iconSizes: unknown extends Defaults["iconSizes"] ? {
type: PropType<[VIconBtnSizes, number][]>;
default: () => (string | number)[][];
} : Omit<{
type: PropType<[VIconBtnSizes, number][]>;
default: () => (string | number)[][];
}, "type" | "default"> & {
type: PropType<unknown extends Defaults["iconSizes"] ? [VIconBtnSizes, number][] : [VIconBtnSizes, number][] | Defaults["iconSizes"]>;
default: unknown extends Defaults["iconSizes"] ? [VIconBtnSizes, number][] : [VIconBtnSizes, number][] | Defaults["iconSizes"];
};
};
export declare function useIconSizes(props: IconSizeProps, fallback: ComputedGetter<VIconBtnSizes | number | string | undefined>): {
iconSize: import("vue").ComputedRef<number | VIconBtnSizes | undefined>;
};