@eslamdevui/ui
Version:
A UI Library for Modern Web Apps, powered by Vue & Tailwind CSS.
59 lines (58 loc) • 2.17 kB
TypeScript
import type { AppConfig } from '@nuxt/schema';
import type { ButtonProps, KbdProps, ComponentConfig, TooltipProps } from '../types';
import theme from '#build/ui/dashboard-search-button';
export type DashboardSearchButton = ComponentConfig<typeof theme, AppConfig, 'dashboardSearchButton'>;
export interface DashboardSearchButtonProps {
/**
* The icon displayed in the button.
* @defaultValue appConfig.ui.icons.search
* @IconifyIcon
*/
icon?: string;
/**
* The label displayed in the button.
* @defaultValue t('dashboardSearchButton.label')
*/
label?: string;
/**
* The color of the button.
* @defaultValue 'neutral'
*/
color?: ButtonProps['color'];
/**
* The variant of the button.
* Defaults to 'outline' when not collapsed, 'ghost' when collapsed.
*/
variant?: ButtonProps['variant'];
size?: ButtonProps['size'];
/**
* Whether the button is collapsed.
* @defaultValue false
*/
collapsed?: boolean;
/**
* Display a tooltip on the button when is collapsed with the button label.
* This has priority over the global `tooltip` prop.
*/
tooltip?: boolean | TooltipProps;
/**
* The keyboard keys to display in the button.
* `{ variant: 'subtle' }`{lang="ts-type"}
* @defaultValue ['meta', 'k']
*/
kbds?: KbdProps['value'][] | KbdProps[];
ui?: DashboardSearchButton['slots'] & ButtonProps['ui'];
class?: any;
}
declare const _default: __VLS_WithSlots<import("vue").DefineComponent<DashboardSearchButtonProps, void, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<DashboardSearchButtonProps> & Readonly<{}>, {
color: "error" | "info" | "primary" | "secondary" | "success" | "warning" | "neutral";
tooltip: boolean | TooltipProps;
kbds: KbdProps["value"][] | KbdProps[];
collapsed: boolean;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, __VLS_Slots>;
export default _default;
type __VLS_WithSlots<T, S> = T & {
new (): {
$slots: S;
};
};