maz-ui
Version:
A standalone components library for Vue.Js 3 & Nuxt.Js 3
89 lines (88 loc) • 3.48 kB
TypeScript
import { HTMLAttributes } from 'vue';
import { MazColor } from './types';
export interface MazTextareaProps<T extends string | undefined | null> {
/** Style attribut of the component root element */
style?: HTMLAttributes['style'];
/** Class attribut of the component root element */
class?: HTMLAttributes['class'];
/** @model The value of the textarea */
modelValue?: T;
/** The id of the textarea */
id?: string;
/** The name of the textarea */
name?: string;
/** The label of the textarea */
label?: string;
/** The placeholder of the textarea */
placeholder?: string;
/** If the textarea is required */
required?: boolean;
/** If the textarea is disabled */
disabled?: boolean;
/** If the textarea is readonly */
readonly?: boolean;
/** If the textarea has an error */
error?: boolean;
/** If the textarea has a success */
success?: boolean;
/** If the textarea has a warning */
warning?: boolean;
/** The hint of the textarea */
hint?: string;
/** The color of the textarea */
color?: MazColor;
/**
* Size radius of the component's border
* @values `'none' | 'sm' | 'md' | 'lg' | 'xl' | 'full'`
*/
roundedSize?: 'none' | 'sm' | 'md' | 'lg' | 'xl' | 'full';
/**
* If the textarea has a padding
* @default true
*/
padding?: boolean;
/**
* If the textarea has a transparent background
* @default false
*/
transparent?: boolean;
/**
* If the textarea has no border
* @default false
*/
border?: boolean;
/**
* The alignment of the append slot
* @values `'start' | 'end' | 'center' | 'space-between' | 'space-around' | 'space-evenly'`
* @default 'end'
*/
appendJustify?: 'start' | 'end' | 'center' | 'space-between' | 'space-around' | 'space-evenly';
}
declare const _default: <T extends string | undefined | null>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_expose?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
props: __VLS_PrettifyLocal<Pick<Partial<{}> & Omit<{
readonly onBlur?: ((value: FocusEvent) => any) | undefined;
readonly onChange?: ((value: Event) => any) | undefined;
readonly onFocus?: ((value: FocusEvent) => any) | undefined;
readonly onInput?: ((value?: T | undefined) => any) | undefined;
readonly "onUpdate:model-value"?: ((value?: T | undefined) => any) | undefined;
} & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps, never>, "onFocus" | "onBlur" | "onChange" | "onInput" | "onUpdate:model-value"> & MazTextareaProps<T> & Partial<{}>> & import('vue').PublicProps;
expose(exposed: import('vue').ShallowUnwrapRef<{}>): void;
attrs: any;
slots: {
label?(_: {}): any;
append?(_: {}): any;
};
emit: {
(event: "update:model-value", value?: T): void;
(event: "input", value?: T): void;
(event: "focus", value: FocusEvent): void;
(event: "blur", value: FocusEvent): void;
(event: "change", value: Event): void;
};
}>) => import('vue').VNode & {
__ctx?: Awaited<typeof __VLS_setup>;
};
export default _default;
type __VLS_PrettifyLocal<T> = {
[K in keyof T]: T[K];
} & {};