--- /dev/null
+---
+'@sveltejs/kit': patch
+---
+
+fix: improved the accuracy of the types of the output of `field.as('...')`
get files(): FileList | null;
set files(v: FileList | null);
}
- : {
- name: string;
- type: T;
- 'aria-invalid': boolean | 'false' | 'true' | undefined;
- get value(): string | number;
- set value(v: string | number);
- };
+ : T extends 'select' | 'select multiple'
+ ? {
+ name: string;
+ multiple: T extends 'select' ? false : true;
+ 'aria-invalid': boolean | 'false' | 'true' | undefined;
+ get value(): string | number;
+ set value(v: string | number);
+ }
+ : T extends 'text'
+ ? {
+ name: string;
+ 'aria-invalid': boolean | 'false' | 'true' | undefined;
+ get value(): string | number;
+ set value(v: string | number);
+ }
+ : {
+ name: string;
+ type: T;
+ 'aria-invalid': boolean | 'false' | 'true' | undefined;
+ get value(): string | number;
+ set value(v: string | number);
+ };
type RemoteFormFieldMethods<T> = {
/** The values that will be submitted */
get files(): FileList | null;
set files(v: FileList | null);
}
- : {
- name: string;
- type: T;
- 'aria-invalid': boolean | 'false' | 'true' | undefined;
- get value(): string | number;
- set value(v: string | number);
- };
+ : T extends 'select' | 'select multiple'
+ ? {
+ name: string;
+ multiple: T extends 'select' ? false : true;
+ 'aria-invalid': boolean | 'false' | 'true' | undefined;
+ get value(): string | number;
+ set value(v: string | number);
+ }
+ : T extends 'text'
+ ? {
+ name: string;
+ 'aria-invalid': boolean | 'false' | 'true' | undefined;
+ get value(): string | number;
+ set value(v: string | number);
+ }
+ : {
+ name: string;
+ type: T;
+ 'aria-invalid': boolean | 'false' | 'true' | undefined;
+ get value(): string | number;
+ set value(v: string | number);
+ };
type RemoteFormFieldMethods<T> = {
/** The values that will be submitted */