anq-modal-form
Version:
A powerful, customizable modal form component for Quasar Framework and Vue 3 applications. Features include responsive design, dynamic form generation, validation, animations, and seamless integration with Quasar's design system.
131 lines (130 loc) • 3.55 kB
TypeScript
import { QBtnProps, QCard, QForm } from 'quasar';
import { Component } from 'vue';
declare var __VLS_18: {
color: import("quasar").NamedColor;
disable: boolean;
}, __VLS_38: {}, __VLS_48: {
color: import("quasar").NamedColor;
disable: boolean;
label: string;
}, __VLS_54: {
color: import("quasar").NamedColor;
label: string;
disable: boolean;
loading: boolean;
};
type __VLS_Slots = {} & {
'close-icon-btn'?: (props: typeof __VLS_18) => any;
} & {
content?: (props: typeof __VLS_38) => any;
} & {
'cancel-btn'?: (props: typeof __VLS_48) => any;
} & {
'ok-btn'?: (props: typeof __VLS_54) => any;
};
declare const __VLS_component: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
isLoading: {
type: BooleanConstructor;
default: boolean;
};
formIsLoading: {
type: BooleanConstructor;
default: boolean;
};
okLabel: {
type: StringConstructor;
default: string;
};
cancelLabel: {
type: StringConstructor;
default: string;
};
title: {
type: StringConstructor;
default: string;
};
btnsColor: {
type: () => QBtnProps["color"];
default: QBtnProps["color"];
};
modalCardProps: {
type: () => ({
class?: string;
style?: string;
} & InstanceType<typeof QCard>["$props"]);
required: false;
};
formProps: {
type: () => ({
class?: string;
style?: string;
} & InstanceType<typeof QForm>["$props"]);
required: false;
};
}>, {
show: () => void;
hide: () => void;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
submit: (evt: Event | SubmitEvent) => any;
"validation-error": (c: Component) => any;
"validation-success": () => any;
hide: () => any;
}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
isLoading: {
type: BooleanConstructor;
default: boolean;
};
formIsLoading: {
type: BooleanConstructor;
default: boolean;
};
okLabel: {
type: StringConstructor;
default: string;
};
cancelLabel: {
type: StringConstructor;
default: string;
};
title: {
type: StringConstructor;
default: string;
};
btnsColor: {
type: () => QBtnProps["color"];
default: QBtnProps["color"];
};
modalCardProps: {
type: () => ({
class?: string;
style?: string;
} & InstanceType<typeof QCard>["$props"]);
required: false;
};
formProps: {
type: () => ({
class?: string;
style?: string;
} & InstanceType<typeof QForm>["$props"]);
required: false;
};
}>> & Readonly<{
onSubmit?: ((evt: Event | SubmitEvent) => any) | undefined;
"onValidation-error"?: ((c: Component) => any) | undefined;
"onValidation-success"?: (() => any) | undefined;
onHide?: (() => any) | undefined;
}>, {
isLoading: boolean;
formIsLoading: boolean;
okLabel: string;
cancelLabel: string;
title: string;
btnsColor: import("quasar").NamedColor | undefined;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
export default _default;
type __VLS_WithSlots<T, S> = T & {
new (): {
$slots: S;
};
};