import type { PropType, SlotsType } from 'vue'; import { Form as InertiaForm } from '@inertiajs/vue3'; import type { RouteParams, RouteParamsFormats, Routes } from '../common.ts'; export type InertiaFormSlots = InstanceType['$slots']; export type InertiaFormDefaultSlot = InertiaFormSlots['default']; export type InertiaFormSlotProps = InertiaFormDefaultSlot extends (...args: any[]) => any ? Parameters[0] : never; /** * Parameters required for route navigation with proper type safety. */ export type FormParams = RouteParams; /** * Type-safe Form component for Inertia.js form submissions. * * Supports both route-based form submission with automatic URL resolution * and direct action for maximum flexibility. * * @example * ```vue * *
* * *
* * *
* * *
* ``` */ export declare const Form: import("vue").DefineComponent; required: false; }; params: { type: PropType>; required: false; }; action: { type: PropType<{ url: string; method: string; }>; required: false; }; }>, () => import("vue").VNode, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly; required: false; }; params: { type: PropType>; required: false; }; action: { type: PropType<{ url: string; method: string; }>; required: false; }; }>> & Readonly<{}>, {}, SlotsType<{ default: InertiaFormSlotProps; }>, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;