Skip to content

Commit bb88411

Browse files
committed
Fix type parameters in StandardSchemaV1 to ensure correct type inference
1 parent 0e0f262 commit bb88411

File tree

4 files changed

+7
-7
lines changed

4 files changed

+7
-7
lines changed

src/internal/_createStandardSchema.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import { IValidation } from "../IValidation";
44

55
export const _createStandardSchema = <T>(
66
fn: (input: unknown) => IValidation<T>,
7-
): ((input: unknown) => IValidation<T>) & StandardSchemaV1<unknown, T> =>
7+
): ((input: unknown) => IValidation<T>) & StandardSchemaV1<T, T> =>
88
Object.assign(fn, {
99
"~standard": {
1010
version: 1,
@@ -25,7 +25,7 @@ export const _createStandardSchema = <T>(
2525
}
2626
},
2727
},
28-
} satisfies StandardSchemaV1<unknown, T>);
28+
} satisfies StandardSchemaV1<T, T>);
2929

3030
enum PathParserState {
3131
// Start of a new segment

src/module.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -708,7 +708,7 @@ export function createValidate(): never;
708708
* @returns A reusable `validate` function
709709
*/
710710
export function createValidate<T>(): ((input: unknown) => IValidation<T>) &
711-
StandardSchemaV1<unknown, T>;
711+
StandardSchemaV1<T, T>;
712712

713713
/** @internal */
714714
export function createValidate(): ((input: unknown) => IValidation) &
@@ -852,7 +852,7 @@ export function createValidateEquals(): never;
852852
export function createValidateEquals<T>(): ((
853853
input: unknown,
854854
) => IValidation<T>) &
855-
StandardSchemaV1<unknown, T>;
855+
StandardSchemaV1<T, T>;
856856

857857
/** @internal */
858858
export function createValidateEquals(): ((input: unknown) => IValidation) &

test/src/internal/_test_standardSchema_validate.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import { TestStructure } from "../helpers/TestStructure";
66
export const _test_standardSchema_validate =
77
(name: string) =>
88
<T>(factory: TestStructure<T>) =>
9-
(validate: StandardSchemaV1<unknown, T>): void => {
9+
(validate: StandardSchemaV1<T, T>): void => {
1010
const input: T = factory.generate();
1111
const valid = validate["~standard"].validate(input);
1212
if (!("value" in valid))

website/src/content/docs/validators/validate.mdx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -131,8 +131,8 @@ In the below example case, as `id` property is different with its type definitio
131131
]}>
132132
<Tabs.Tab>
133133
```typescript copy
134-
export function createValidate<T> = (input: unknown) => IValidation<T> & StandardSchemaV1<unknown, T>;
135-
export function createValidateEquals<T> = (input: unknown) => IValidation<T> & StandardSchemaV1<unknown, T>;
134+
export function createValidate<T> = (input: unknown) => IValidation<T> & StandardSchemaV1<T, T>;
135+
export function createValidateEquals<T> = (input: unknown) => IValidation<T> & StandardSchemaV1<T, T>;
136136
```
137137
</Tabs.Tab>
138138
<Tabs.Tab>

0 commit comments

Comments
 (0)