{"_id":"@standard-schema/spec","_rev":"4235907","name":"@standard-schema/spec","description":"A family of specs for interoperable TypeScript","dist-tags":{"latest":"1.1.0"},"maintainers":[{"name":"colinhacks","email":""},{"name":"fabian-hiller","email":""}],"time":{"modified":"2026-03-23T00:49:49.000Z","created":"2024-09-27T03:07:56.009Z","1.1.0":"2025-12-15T20:49:46.431Z","1.0.0":"2025-01-27T03:03:19.334Z","1.0.0-rc.0":"2025-01-10T02:45:12.235Z","1.0.0-beta.4":"2024-11-27T23:14:56.722Z","1.0.0-beta.3":"2024-11-08T15:19:32.347Z","1.0.0-beta.2":"2024-11-08T02:43:46.442Z","1.0.0-beta.1":"2024-10-06T05:15:01.110Z","1.0.0-beta.0":"2024-09-27T03:07:56.009Z"},"users":{},"author":{"name":"Colin McDonnell"},"repository":{"type":"git","url":"git+https://github.com/standard-schema/standard-schema.git"},"versions":{"1.1.0":{"name":"@standard-schema/spec","description":"A family of specs for interoperable TypeScript","version":"1.1.0","license":"MIT","author":{"name":"Colin McDonnell"},"homepage":"https://standardschema.dev","repository":{"type":"git","url":"git+https://github.com/standard-schema/standard-schema.git"},"keywords":["typescript","schema","validation","standard","interface"],"type":"module","main":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"standard-schema-spec":"./src/index.ts","import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"sideEffects":false,"publishConfig":{"access":"public"},"devDependencies":{"tsup":"^8.3.0","typescript":"^5.6.2"},"scripts":{"lint":"pnpm biome lint ./src","format":"pnpm biome format --write ./src","check":"pnpm biome check ./src","build":"tsup"},"_id":"@standard-schema/spec@1.1.0","bugs":{"url":"https://github.com/standard-schema/standard-schema/issues"},"_integrity":"sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w==","_resolved":"/tmp/f2c1cda6513eef9a66a2729cbb7934e4/standard-schema-spec-1.1.0.tgz","_from":"file:standard-schema-spec-1.1.0.tgz","_nodeVersion":"20.19.6","_npmVersion":"10.8.2","dist":{"shasum":"a79b55dbaf8604812f52d140b2c9ab41bc150bb8","size":4178,"noattachment":false,"key":"/@standard-schema/spec/-/@standard-schema/spec-1.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/@standard-schema/spec/download/@standard-schema/spec-1.1.0.tgz"},"_npmUser":{"name":"fabian-hiller","email":"hillerfabian11@gmail.com"},"directories":{},"maintainers":[{"name":"colinhacks","email":""},{"name":"fabian-hiller","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/spec_1.1.0_1765831786291_0.4301069348914006"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2025-12-15T20:49:46.431Z","publish_time":1765831786431,"_source_registry_name":"default","_cnpm_publish_time":1765831786431},"1.0.0":{"name":"@standard-schema/spec","description":"A standard interface for TypeScript schema validation libraries","version":"1.0.0","license":"MIT","author":{"name":"Colin McDonnell"},"homepage":"https://standardschema.dev","repository":{"type":"git","url":"git+https://github.com/standard-schema/standard-schema.git"},"keywords":["typescript","schema","validation","standard","interface"],"type":"module","main":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"sideEffects":false,"publishConfig":{"access":"public"},"devDependencies":{"tsup":"^8.3.0","typescript":"^5.6.2"},"scripts":{"lint":"pnpm biome lint ./src","format":"pnpm biome format --write ./src","check":"pnpm biome check ./src","build":"tsup"},"_id":"@standard-schema/spec@1.0.0","bugs":{"url":"https://github.com/standard-schema/standard-schema/issues"},"_integrity":"sha512-m2bOd0f2RT9k8QJx1JN85cZYyH1RqFBdlwtkSlf4tBDYLCiiZnv1fIIwacK6cqwXavOydf0NPToMQgpKq+dVlA==","_resolved":"/tmp/092ac65b2db5e85815b20835b0230da5/standard-schema-spec-1.0.0.tgz","_from":"file:standard-schema-spec-1.0.0.tgz","_nodeVersion":"20.18.1","_npmVersion":"10.8.2","dist":{"shasum":"f193b73dc316c4170f2e82a881da0f550d551b9c","size":7412,"noattachment":false,"key":"/@standard-schema/spec/-/@standard-schema/spec-1.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/@standard-schema/spec/download/@standard-schema/spec-1.0.0.tgz"},"_npmUser":{"name":"fabian-hiller","email":"hillerfabian11@gmail.com"},"directories":{},"maintainers":[{"name":"colinhacks","email":""},{"name":"fabian-hiller","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/spec_1.0.0_1737946999155_0.8220776792324331"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2025-01-27T03:03:19.334Z","publish_time":1737946999334,"_source_registry_name":"default","_cnpm_publish_time":1737946999334},"1.0.0-rc.0":{"name":"@standard-schema/spec","description":"A standard interface for TypeScript schema validation libraries","version":"1.0.0-rc.0","license":"MIT","author":{"name":"Colin McDonnell"},"repository":{"type":"git","url":"git+https://github.com/standard-schema/standard-schema.git"},"keywords":["typescript","schema","validation","standard","interface"],"type":"module","main":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"sideEffects":false,"publishConfig":{"access":"public"},"devDependencies":{"tsup":"^8.3.0","typescript":"^5.6.2"},"scripts":{"lint":"pnpm biome lint ./src","format":"pnpm biome format --write ./src","check":"pnpm biome check ./src","build":"tsup"},"_id":"@standard-schema/spec@1.0.0-rc.0","bugs":{"url":"https://github.com/standard-schema/standard-schema/issues"},"homepage":"https://github.com/standard-schema/standard-schema#readme","_integrity":"sha512-DcY/ICFcZIESNTLTexIT108HOqd1FtxsiLV4ZYGluySWyjF6TZ6troNyXjiqoHU6j0wN3A6SmYnTA5CHQp9blw==","_resolved":"/tmp/668f2d7673ebc6cfa66de496fb1d1176/standard-schema-spec-1.0.0-rc.0.tgz","_from":"file:standard-schema-spec-1.0.0-rc.0.tgz","_nodeVersion":"20.18.1","_npmVersion":"10.8.2","dist":{"shasum":"b17c55e2ba8cbd937588d76839a204ac91bb2f78","size":7248,"noattachment":false,"key":"/@standard-schema/spec/-/@standard-schema/spec-1.0.0-rc.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/@standard-schema/spec/download/@standard-schema/spec-1.0.0-rc.0.tgz"},"_npmUser":{"name":"fabian-hiller","email":"hillerfabian11@gmail.com"},"directories":{},"maintainers":[{"name":"colinhacks","email":""},{"name":"fabian-hiller","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/spec_1.0.0-rc.0_1736477112072_0.07372152269862076"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2025-01-10T02:45:12.235Z","publish_time":1736477112235,"_source_registry_name":"default","_cnpm_publish_time":1736477112235},"1.0.0-beta.4":{"name":"@standard-schema/spec","description":"A standard interface for TypeScript schema validation libraries","version":"1.0.0-beta.4","license":"MIT","author":{"name":"Colin McDonnell"},"repository":{"type":"git","url":"git+https://github.com/standard-schema/standard-schema.git"},"keywords":["typescript","schema","validation","standard","interface"],"type":"module","main":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"sideEffects":false,"publishConfig":{"access":"public"},"devDependencies":{"tsup":"^8.3.0","typescript":"^5.6.2"},"scripts":{"lint":"pnpm biome lint ./src","format":"pnpm biome format --write ./src","check":"pnpm biome check ./src","build":"tsup"},"_id":"@standard-schema/spec@1.0.0-beta.4","bugs":{"url":"https://github.com/standard-schema/standard-schema/issues"},"homepage":"https://github.com/standard-schema/standard-schema#readme","_integrity":"sha512-d3IxtzLo7P1oZ8s8YNvxzBUXRXojSut8pbPrTYtzsc5sn4+53jVqbk66pQerSZbZSJZQux6LkclB/+8IDordHg==","_resolved":"/tmp/6810b23ee344392dfe6c2a2d68058f41/standard-schema-spec-1.0.0-beta.4.tgz","_from":"file:standard-schema-spec-1.0.0-beta.4.tgz","_nodeVersion":"20.18.1","_npmVersion":"10.8.2","dist":{"shasum":"62f520109add3eb016004098363bfee0678dd1ec","size":7015,"noattachment":false,"key":"/@standard-schema/spec/-/@standard-schema/spec-1.0.0-beta.4.tgz","tarball":"http://registry.cnpm.dingdandao.com/@standard-schema/spec/download/@standard-schema/spec-1.0.0-beta.4.tgz"},"_npmUser":{"name":"fabian-hiller","email":"hillerfabian11@gmail.com"},"directories":{},"maintainers":[{"name":"colinhacks","email":""},{"name":"fabian-hiller","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/spec_1.0.0-beta.4_1732749296479_0.3601810032693309"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2024-11-27T23:14:56.722Z","publish_time":1732749296722,"_source_registry_name":"default","_cnpm_publish_time":1732749296722},"1.0.0-beta.3":{"name":"@standard-schema/spec","description":"A standard interface for TypeScript schema validation libraries","version":"1.0.0-beta.3","license":"MIT","author":{"name":"Colin McDonnell"},"repository":{"type":"git","url":"git+https://github.com/standard-schema/standard-schema.git"},"keywords":["typescript","schema","validation","standard","interface"],"type":"module","main":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"sideEffects":false,"publishConfig":{"access":"public"},"devDependencies":{"tsup":"^8.3.0","typescript":"^5.6.2"},"scripts":{"lint":"pnpm biome lint ./src","format":"pnpm biome format --write ./src","check":"pnpm biome check ./src","build":"tsup"},"_id":"@standard-schema/spec@1.0.0-beta.3","bugs":{"url":"https://github.com/standard-schema/standard-schema/issues"},"homepage":"https://github.com/standard-schema/standard-schema#readme","_integrity":"sha512-0ifF3BjA1E8SY9C+nUew8RefNOIq0cDlYALPty4rhUm8Rrl6tCM8hBT4bhGhx7I7iXD0uAgt50lgo8dD73ACMw==","_resolved":"/tmp/7bb72f693054619c52b3bf56cb8fba7c/standard-schema-spec-1.0.0-beta.3.tgz","_from":"file:standard-schema-spec-1.0.0-beta.3.tgz","_nodeVersion":"20.18.0","_npmVersion":"10.8.2","dist":{"shasum":"4dbf9a3c69e10fa2997e1ac1f39d8e9f33213576","size":6924,"noattachment":false,"key":"/@standard-schema/spec/-/@standard-schema/spec-1.0.0-beta.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/@standard-schema/spec/download/@standard-schema/spec-1.0.0-beta.3.tgz"},"_npmUser":{"name":"fabian-hiller","email":"hillerfabian11@gmail.com"},"directories":{},"maintainers":[{"name":"colinhacks","email":""},{"name":"fabian-hiller","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/spec_1.0.0-beta.3_1731079172134_0.07887131885754095"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2024-11-08T15:19:32.347Z","publish_time":1731079172347,"_source_registry_name":"default","_cnpm_publish_time":1731079172347},"1.0.0-beta.2":{"name":"@standard-schema/spec","description":"A standard interface for TypeScript schema validation libraries","version":"1.0.0-beta.2","license":"MIT","author":{"name":"Colin McDonnell"},"repository":{"type":"git","url":"git+https://github.com/standard-schema/standard-schema.git"},"keywords":["typescript","schema","validation","standard","interface"],"type":"module","main":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"sideEffects":false,"publishConfig":{"access":"public"},"devDependencies":{"tsup":"^8.3.0","typescript":"^5.6.2"},"scripts":{"lint":"pnpm biome lint ./src","format":"pnpm biome format --write ./src","check":"pnpm biome check ./src","build":"tsup"},"_id":"@standard-schema/spec@1.0.0-beta.2","bugs":{"url":"https://github.com/standard-schema/standard-schema/issues"},"homepage":"https://github.com/standard-schema/standard-schema#readme","_integrity":"sha512-3xO2jovtlaUYPgj6lTL5rgRnKiPyXQXwUmYlQBu2WcTNHrFdbQZ7nrOcqSEtDeRISvv4rQdbBf60xjnT5+tssg==","_resolved":"/tmp/892e4ef63115df7974237d62099d74a1/standard-schema-spec-1.0.0-beta.2.tgz","_from":"file:standard-schema-spec-1.0.0-beta.2.tgz","_nodeVersion":"20.18.0","_npmVersion":"10.8.2","dist":{"shasum":"12ce88bcf5047a026c1d3c513403d91e2a71f08e","size":6933,"noattachment":false,"key":"/@standard-schema/spec/-/@standard-schema/spec-1.0.0-beta.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/@standard-schema/spec/download/@standard-schema/spec-1.0.0-beta.2.tgz"},"_npmUser":{"name":"fabian-hiller","email":"hillerfabian11@gmail.com"},"directories":{},"maintainers":[{"name":"colinhacks","email":""},{"name":"fabian-hiller","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/spec_1.0.0-beta.2_1731033826261_0.26730841655125803"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2024-11-08T02:43:46.442Z","publish_time":1731033826442,"_source_registry_name":"default","_cnpm_publish_time":1731033826442},"1.0.0-beta.1":{"name":"@standard-schema/spec","description":"A standard interface for TypeScript schema validation libraries","version":"1.0.0-beta.1","license":"MIT","author":{"name":"Colin McDonnell"},"repository":{"type":"git","url":"git+https://github.com/standard-schema/standard-schema.git"},"keywords":["typescript","schema","validation","standard","interface"],"type":"module","main":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"sideEffects":false,"publishConfig":{"access":"public"},"devDependencies":{"tsup":"^8.3.0","typescript":"^5.6.2"},"scripts":{"lint":"pnpm biome lint ./src","format":"pnpm biome format --write ./src","check":"pnpm biome check ./src","build":"tsup"},"_id":"@standard-schema/spec@1.0.0-beta.1","bugs":{"url":"https://github.com/standard-schema/standard-schema/issues"},"homepage":"https://github.com/standard-schema/standard-schema#readme","_integrity":"sha512-XFHxCgvFiNrofjsZ1SFLKjLSo6kM9WITBU6gPnkKtrQ6fSuPWhZ/7gLTWmMcMprFgN4FfU1Wcsr5+jNkRaksCQ==","_resolved":"/tmp/9d9ecae5223ede7ea4617dbcdb0ee0b5/standard-schema-spec-1.0.0-beta.1.tgz","_from":"file:standard-schema-spec-1.0.0-beta.1.tgz","_nodeVersion":"20.17.0","_npmVersion":"10.8.2","dist":{"shasum":"dbd8e08cdb014bd113ae10a9f9a87354f86b55b5","size":6825,"noattachment":false,"key":"/@standard-schema/spec/-/@standard-schema/spec-1.0.0-beta.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/@standard-schema/spec/download/@standard-schema/spec-1.0.0-beta.1.tgz"},"_npmUser":{"name":"fabian-hiller","email":"hillerfabian11@gmail.com"},"directories":{},"maintainers":[{"name":"colinhacks","email":""},{"name":"fabian-hiller","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/spec_1.0.0-beta.1_1728191700871_0.045437036406358766"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2024-10-06T05:15:01.110Z","publish_time":1728191701110,"_source_registry_name":"default","_cnpm_publish_time":1728191701110},"1.0.0-beta.0":{"name":"@standard-schema/spec","description":"A standard interface for TypeScript schema validation libraries","version":"1.0.0-beta.0","license":"MIT","author":{"name":"Colin McDonnell"},"repository":{"type":"git","url":"git+https://github.com/standard-schema/standard-schema.git"},"keywords":["typescript","schema","validation","standard","interface"],"type":"module","main":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"sideEffects":false,"publishConfig":{"access":"public"},"scripts":{"test":"vitest --typecheck","lint":"pnpm biome lint ./src","format":"pnpm biome format --write ./src","check":"pnpm biome check ./src","build":"tsup"},"devDependencies":{"@biomejs/biome":"^1.9.2","tsup":"^8.3.0","typescript":"^5.6.2"},"_id":"@standard-schema/spec@1.0.0-beta.0","gitHead":"889b3918f64c418aabd0de40dd0d0e35258f6022","bugs":{"url":"https://github.com/standard-schema/standard-schema/issues"},"homepage":"https://github.com/standard-schema/standard-schema#readme","_nodeVersion":"20.11.0","_npmVersion":"10.8.0","dist":{"shasum":"fa7afa617aa6a485b66fdc3e1df7ab6a903024a7","size":5062,"noattachment":false,"key":"/@standard-schema/spec/-/@standard-schema/spec-1.0.0-beta.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/@standard-schema/spec/download/@standard-schema/spec-1.0.0-beta.0.tgz"},"_npmUser":{"name":"fabian-hiller","email":"hillerfabian11@gmail.com"},"directories":{},"maintainers":[{"name":"colinhacks","email":""},{"name":"fabian-hiller","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/spec_1.0.0-beta.0_1727406475833_0.4525958237428134"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2024-09-27T03:07:56.009Z","publish_time":1727406476009,"_source_registry_name":"default","_cnpm_publish_time":1727406476009}},"readme":"<h1 align=\"center\">\n  <img alt=\"Standard Schema fire logo\" loading=\"lazy\" width=\"50\" height=\"50\" decoding=\"async\" data-nimg=\"1\" style=\"color:transparent\" src=\"https://standardschema.dev/favicon.svg\">\n  </br>\n  Standard Schema</h1>\n<p align=\"center\">\n  A family of specs for interoperable TypeScript\n  <br/>\n  <a href=\"https://standardschema.dev\">standardschema.dev</a>\n</p>\n<br/>\n\n<!-- start -->\n\nThe Standard Schema project is a set of interfaces that standardize the provision and consumption of shared functionality in the TypeScript ecosystem.\n\nIts goal is to allow tools to accept a single input that includes all the types and capabilities they need— no library-specific adapters, no extra dependencies. The result is an ecosystem that's fair for implementers, friendly for consumers, and open for end users.\n\n## The specifications\n\nThe specifications can be found below in their entirety. Libraries wishing to implement a spec can copy/paste the code block below into their codebase. They're also available at `@standard-schema/spec` on [npm](https://www.npmjs.com/package/@standard-schema/spec) and [JSR](https://jsr.io/@standard-schema/spec).\n\n```ts\n// #########################\n// ###   Standard Typed  ###\n// #########################\n\n/** The Standard Typed interface. This is a base type extended by other specs. */\nexport interface StandardTypedV1<Input = unknown, Output = Input> {\n  /** The Standard properties. */\n  readonly \"~standard\": StandardTypedV1.Props<Input, Output>;\n}\n\nexport declare namespace StandardTypedV1 {\n  /** The Standard Typed properties interface. */\n  export interface Props<Input = unknown, Output = Input> {\n    /** The version number of the standard. */\n    readonly version: 1;\n    /** The vendor name of the schema library. */\n    readonly vendor: string;\n    /** Inferred types associated with the schema. */\n    readonly types?: Types<Input, Output> | undefined;\n  }\n\n  /** The Standard Typed types interface. */\n  export interface Types<Input = unknown, Output = Input> {\n    /** The input type of the schema. */\n    readonly input: Input;\n    /** The output type of the schema. */\n    readonly output: Output;\n  }\n\n  /** Infers the input type of a Standard Typed. */\n  export type InferInput<Schema extends StandardTypedV1> = NonNullable<\n    Schema[\"~standard\"][\"types\"]\n  >[\"input\"];\n\n  /** Infers the output type of a Standard Typed. */\n  export type InferOutput<Schema extends StandardTypedV1> = NonNullable<\n    Schema[\"~standard\"][\"types\"]\n  >[\"output\"];\n}\n\n// ##########################\n// ###   Standard Schema  ###\n// ##########################\n\n/** The Standard Schema interface. */\nexport interface StandardSchemaV1<Input = unknown, Output = Input> {\n  /** The Standard Schema properties. */\n  readonly \"~standard\": StandardSchemaV1.Props<Input, Output>;\n}\n\nexport declare namespace StandardSchemaV1 {\n  /** The Standard Schema properties interface. */\n  export interface Props<Input = unknown, Output = Input>\n    extends StandardTypedV1.Props<Input, Output> {\n    /** Validates unknown input values. */\n    readonly validate: (\n      value: unknown,\n      options?: StandardSchemaV1.Options | undefined\n    ) => Result<Output> | Promise<Result<Output>>;\n  }\n\n  /** The result interface of the validate function. */\n  export type Result<Output> = SuccessResult<Output> | FailureResult;\n\n  /** The result interface if validation succeeds. */\n  export interface SuccessResult<Output> {\n    /** The typed output value. */\n    readonly value: Output;\n    /** A falsy value for `issues` indicates success. */\n    readonly issues?: undefined;\n  }\n\n  export interface Options {\n    /** Explicit support for additional vendor-specific parameters, if needed. */\n    readonly libraryOptions?: Record<string, unknown> | undefined;\n  }\n\n  /** The result interface if validation fails. */\n  export interface FailureResult {\n    /** The issues of failed validation. */\n    readonly issues: ReadonlyArray<Issue>;\n  }\n\n  /** The issue interface of the failure output. */\n  export interface Issue {\n    /** The error message of the issue. */\n    readonly message: string;\n    /** The path of the issue, if any. */\n    readonly path?: ReadonlyArray<PropertyKey | PathSegment> | undefined;\n  }\n\n  /** The path segment interface of the issue. */\n  export interface PathSegment {\n    /** The key representing a path segment. */\n    readonly key: PropertyKey;\n  }\n\n  /** The Standard types interface. */\n  export interface Types<Input = unknown, Output = Input>\n    extends StandardTypedV1.Types<Input, Output> {}\n\n  /** Infers the input type of a Standard. */\n  export type InferInput<Schema extends StandardTypedV1> =\n    StandardTypedV1.InferInput<Schema>;\n\n  /** Infers the output type of a Standard. */\n  export type InferOutput<Schema extends StandardTypedV1> =\n    StandardTypedV1.InferOutput<Schema>;\n}\n\n// ###############################\n// ###   Standard JSON Schema  ###\n// ###############################\n\n/** The Standard JSON Schema interface. */\nexport interface StandardJSONSchemaV1<Input = unknown, Output = Input> {\n  /** The Standard JSON Schema properties. */\n  readonly \"~standard\": StandardJSONSchemaV1.Props<Input, Output>;\n}\n\nexport declare namespace StandardJSONSchemaV1 {\n  /** The Standard JSON Schema properties interface. */\n  export interface Props<Input = unknown, Output = Input>\n    extends StandardTypedV1.Props<Input, Output> {\n    /** Methods for generating the input/output JSON Schema. */\n    readonly jsonSchema: StandardJSONSchemaV1.Converter;\n  }\n\n  /** The Standard JSON Schema converter interface. */\n  export interface Converter {\n    /** Converts the input type to JSON Schema. May throw if conversion is not supported. */\n    readonly input: (\n      options: StandardJSONSchemaV1.Options\n    ) => Record<string, unknown>;\n    /** Converts the output type to JSON Schema. May throw if conversion is not supported. */\n    readonly output: (\n      options: StandardJSONSchemaV1.Options\n    ) => Record<string, unknown>;\n  }\n\n  /**\n   * The target version of the generated JSON Schema.\n   *\n   * It is *strongly recommended* that implementers support `\"draft-2020-12\"` and `\"draft-07\"`, as they are both in wide use. All other targets can be implemented on a best-effort basis. Libraries should throw if they don't support a specified target.\n   *\n   * The `\"openapi-3.0\"` target is intended as a standardized specifier for OpenAPI 3.0 which is a superset of JSON Schema `\"draft-04\"`.\n   */\n  export type Target =\n    | \"draft-2020-12\"\n    | \"draft-07\"\n    | \"openapi-3.0\"\n    // Accepts any string for future targets while preserving autocomplete\n    | ({} & string);\n\n  /** The options for the input/output methods. */\n  export interface Options {\n    /** Specifies the target version of the generated JSON Schema. Support for all versions is on a best-effort basis. If a given version is not supported, the library should throw. */\n    readonly target: Target;\n\n    /** Explicit support for additional vendor-specific parameters, if needed. */\n    readonly libraryOptions?: Record<string, unknown> | undefined;\n  }\n\n  /** The Standard types interface. */\n  export interface Types<Input = unknown, Output = Input>\n    extends StandardTypedV1.Types<Input, Output> {}\n\n  /** Infers the input type of a Standard. */\n  export type InferInput<Schema extends StandardTypedV1> =\n    StandardTypedV1.InferInput<Schema>;\n\n  /** Infers the output type of a Standard. */\n  export type InferOutput<Schema extends StandardTypedV1> =\n    StandardTypedV1.InferOutput<Schema>;\n}\n```\n","_attachments":{},"homepage":"https://standardschema.dev","bugs":{"url":"https://github.com/standard-schema/standard-schema/issues"},"license":"MIT"}