{"_id":"@ariatype/ariatype","_rev":"3-8d6445e4d038fab98203ae44f21502c6","name":"@ariatype/ariatype","dist-tags":{"latest":"1.0.2"},"versions":{"1.0.0":{"name":"@ariatype/ariatype","version":"1.0.0","author":{"name":"Durk Steed Jr.","email":"contact@durksteedjr.com"},"license":"MIT","_id":"@ariatype/ariatype@1.0.0","maintainers":[{"name":"durksteedjr","email":"npmjs.com.sizable169@passmail.net"}],"homepage":"https://durksteedjr.com/docs/ariatype","bugs":{"url":"https://github.com/ariatype/ariatype/issues"},"dist":{"shasum":"2e2bc68c982740540e60d6cc605d64f00b468ddb","tarball":"https://registry.npmjs.org/@ariatype/ariatype/-/ariatype-1.0.0.tgz","fileCount":6,"integrity":"sha512-61mR5dAvcuhYixntkT/wiHJmivDea2YeZxHAeIyeN9g7Mcz4s4xmdsTMOTAv2NCoukfMbs/KHoRuwlHC2WdCXQ==","signatures":[{"sig":"MEUCIQC7hPR1ypzfZMhpzh7HLYVoFQWGuyZiFgmXRofrYHza3gIgT+yt7QSyFjuoZqjj62AEYNyTXYTlZI8ob4dSQZGPqFM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":13585},"type":"module","_from":"file:ariatype-ariatype-1.0.0.tgz","types":"./dist/index.d.ts","exports":"./dist/index.js","scripts":{"dev":"pnpm run tsup:watch","tsc":"tsc","tsup":"tsup","build":"pnpm run tsup","typecheck":"pnpm run tsc:no-emit","tsup:watch":"pnpm run tsup --watch","tsc:no-emit":"pnpm run tsc --noEmit"},"_npmUser":{"name":"durksteedjr","email":"npmjs.com.sizable169@passmail.net"},"_resolved":"/tmp/5cf23e25548bdbdad561da28a65bcc3f/ariatype-ariatype-1.0.0.tgz","_integrity":"sha512-61mR5dAvcuhYixntkT/wiHJmivDea2YeZxHAeIyeN9g7Mcz4s4xmdsTMOTAv2NCoukfMbs/KHoRuwlHC2WdCXQ==","repository":{"url":"git+https://github.com/ariatype/ariatype.git","type":"git","directory":"@ariatype/ariatype"},"_npmVersion":"10.7.0","description":"TypeScript type definitions for WAI-ARIA accessibility.","directories":{},"_nodeVersion":"18.20.4","dependencies":{"@ariatype/aria-roles":"1.0.0","@ariatype/aria-attributes":"1.0.0","@ariatype/aria-roles-widget":"1.0.0","@ariatype/aria-roles-window":"1.0.0","@ariatype/aria-roles-generic":"1.0.0","@ariatype/aria-roles-landmark":"1.0.0","@ariatype/aria-roles-composite":"1.0.0","@ariatype/aria-attributes-global":"1.0.0","@ariatype/aria-attributes-widget":"1.0.0","@ariatype/aria-roles-live-region":"1.0.0","@ariatype/partially-required-props":"1.0.0","@ariatype/aria-attributes-live-region":"1.0.0","@ariatype/aria-attributes-relationship":"1.0.0","@ariatype/aria-attributes-drag-and-drop":"1.0.0","@ariatype/aria-roles-document-structure":"1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","typescript":"^5.5.4"},"_npmOperationalInternal":{"tmp":"tmp/ariatype_1.0.0_1728560993267_0.5671507460922818","host":"s3://npm-registry-packages"}},"1.0.1":{"name":"@ariatype/ariatype","version":"1.0.1","author":{"name":"Durk Steed Jr.","email":"contact@durksteedjr.com"},"license":"MIT","_id":"@ariatype/ariatype@1.0.1","maintainers":[{"name":"durksteedjr","email":"npmjs.com.sizable169@passmail.net"}],"homepage":"https://durksteedjr.com/docs/ariatype","bugs":{"url":"https://github.com/ariatype/ariatype/issues"},"dist":{"shasum":"d39deaf1e0d06d0f3e44ba31894597cb60e40ed7","tarball":"https://registry.npmjs.org/@ariatype/ariatype/-/ariatype-1.0.1.tgz","fileCount":6,"integrity":"sha512-gFIiQl5pFlMwJaqdN3Q0L0Rth7+qBWSnvS2eg48mRP//Go39aWIUvuq76fkCBuZJYMe+iHOWjt78BhOAj94f7g==","signatures":[{"sig":"MEUCIQCeSHYpm6QeOliXMG/G2CaEH0imniJr0odNbnaGbmycewIgarZbw3dYIkLW6fbI8xPOvZeiM5i38EQqXw7j564TQo8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":13587},"type":"module","_from":"file:ariatype-ariatype-1.0.1.tgz","types":"./dist/index.d.ts","exports":"./dist/index.js","scripts":{"dev":"pnpm run tsup:watch","tsc":"tsc","tsup":"tsup","build":"pnpm run tsup","typecheck":"pnpm run tsc:no-emit","tsup:watch":"pnpm run tsup --watch","tsc:no-emit":"pnpm run tsc --noEmit"},"_npmUser":{"name":"durksteedjr","email":"npmjs.com.sizable169@passmail.net"},"_resolved":"/tmp/47fa07c6b55b8d51bbd6419dbe1bbbe1/ariatype-ariatype-1.0.1.tgz","_integrity":"sha512-gFIiQl5pFlMwJaqdN3Q0L0Rth7+qBWSnvS2eg48mRP//Go39aWIUvuq76fkCBuZJYMe+iHOWjt78BhOAj94f7g==","repository":{"url":"git+https://github.com/ariatype/ariatype.git","type":"git","directory":"@ariatype/ariatype"},"_npmVersion":"10.7.0","description":"TypeScript type definitions for WAI-ARIA accessibility.","directories":{},"_nodeVersion":"18.20.4","dependencies":{"@ariatype/aria-roles":"1.0.1","@ariatype/aria-attributes":"1.0.1","@ariatype/aria-roles-widget":"1.0.1","@ariatype/aria-roles-window":"1.0.1","@ariatype/aria-roles-generic":"1.0.1","@ariatype/aria-roles-landmark":"1.0.1","@ariatype/aria-roles-composite":"1.0.1","@ariatype/aria-attributes-global":"1.0.1","@ariatype/aria-attributes-widget":"1.0.1","@ariatype/aria-roles-live-region":"1.0.1","@ariatype/partially-required-props":"1.0.1","@ariatype/aria-attributes-live-region":"1.0.1","@ariatype/aria-attributes-relationship":"1.0.1","@ariatype/aria-attributes-drag-and-drop":"1.0.1","@ariatype/aria-roles-document-structure":"1.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","typescript":"^5.5.4"},"_npmOperationalInternal":{"tmp":"tmp/ariatype_1.0.1_1728562554747_0.13939652836593264","host":"s3://npm-registry-packages"}},"1.0.2":{"name":"@ariatype/ariatype","version":"1.0.2","description":"TypeScript type definitions for WAI-ARIA accessibility.","homepage":"https://durksteedjr.com/docs/ariatype","bugs":{"url":"https://github.com/ariatype/ariatype/issues"},"repository":{"type":"git","url":"git+https://github.com/ariatype/ariatype.git","directory":"@ariatype/ariatype"},"license":"MIT","author":{"name":"Durk Steed Jr.","email":"contact@durksteedjr.com"},"type":"module","exports":"./dist/index.js","types":"./dist/index.d.ts","dependencies":{"@ariatype/aria-attributes":"1.0.2","@ariatype/aria-attributes-drag-and-drop":"1.0.2","@ariatype/aria-attributes-live-region":"1.0.2","@ariatype/aria-attributes-relationship":"1.0.2","@ariatype/aria-attributes-global":"1.0.2","@ariatype/aria-attributes-widget":"1.0.2","@ariatype/aria-roles":"1.0.2","@ariatype/aria-roles-composite":"1.0.2","@ariatype/aria-roles-document-structure":"1.0.2","@ariatype/aria-roles-generic":"1.0.2","@ariatype/aria-roles-landmark":"1.0.2","@ariatype/aria-roles-live-region":"1.0.2","@ariatype/aria-roles-widget":"1.0.2","@ariatype/aria-roles-window":"1.0.2","@ariatype/partially-required-props":"1.0.2"},"devDependencies":{"tsup":"^8.3.0","typescript":"^5.5.4"},"publishConfig":{"access":"public"},"scripts":{"build":"pnpm run tsup","dev":"pnpm run tsup:watch","tsc":"tsc","tsc:no-emit":"pnpm run tsc --noEmit","tsup":"tsup","tsup:watch":"pnpm run tsup --watch","typecheck":"pnpm run tsc:no-emit"},"_id":"@ariatype/ariatype@1.0.2","_integrity":"sha512-hOD61MN7ukyQRT1FORYrHaletrs7LyAX+dSYy7yXAwZtiL2Hav6LiLTwuR4C3sl1EXC+FUWwjY4wBgpslVZyYQ==","_resolved":"/tmp/00eafd0733b736968d7ac0bec3d25298/ariatype-ariatype-1.0.2.tgz","_from":"file:ariatype-ariatype-1.0.2.tgz","_nodeVersion":"20.19.4","_npmVersion":"10.8.2","dist":{"integrity":"sha512-hOD61MN7ukyQRT1FORYrHaletrs7LyAX+dSYy7yXAwZtiL2Hav6LiLTwuR4C3sl1EXC+FUWwjY4wBgpslVZyYQ==","shasum":"95deef04c79e9da2dc42cb6f6da861d3740a8836","tarball":"https://registry.npmjs.org/@ariatype/ariatype/-/ariatype-1.0.2.tgz","fileCount":6,"unpackedSize":13572,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDBdJHKXjktbmGEZXNQEppx5sP5gaHZ2+AFoH2V218ZVAIga1DeWwrWBy4VnFBnjbwrgO5MX14B/747ytpLGuW5mSg="}]},"_npmUser":{"name":"durksteedjr","email":"npmjs.com.sizable169@passmail.net"},"directories":{},"maintainers":[{"name":"durksteedjr","email":"npmjs.com.sizable169@passmail.net"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/ariatype_1.0.2_1754314070028_0.028143221469082214"},"_hasShrinkwrap":false}},"time":{"created":"2024-10-10T11:49:53.143Z","modified":"2025-08-04T13:27:51.166Z","1.0.0":"2024-10-10T11:49:53.491Z","1.0.1":"2024-10-10T12:15:54.970Z","1.0.2":"2025-08-04T13:27:50.239Z"},"bugs":{"url":"https://github.com/ariatype/ariatype/issues"},"author":{"name":"Durk Steed Jr.","email":"contact@durksteedjr.com"},"license":"MIT","homepage":"https://durksteedjr.com/docs/ariatype","repository":{"type":"git","url":"git+https://github.com/ariatype/ariatype.git","directory":"@ariatype/ariatype"},"description":"TypeScript type definitions for WAI-ARIA accessibility.","maintainers":[{"name":"durksteedjr","email":"npmjs.com.sizable169@passmail.net"}],"readme":"# @ariatype/ariatype\n\nAriatype provides TypeScript with complete type definitions for [WAI-ARIA](https://www.w3.org/WAI/standards-guidelines/aria) accessibility. The goal of this project is to further enhance developer experience and understanding of WAI-ARIA accessibility best practices.\n\n## Installation\n\n```bash\nnpm install @ariatype/ariatype -D\n```\n\n## Usage\n\n```ts\nimport { AriaTypes } from \"@ariatype/ariatype\";\n\nconst aria: AriaTypes = {\n  \"aria-atomic\": \"true\",\n  role: \"alert\",\n};\n```\n\n## Requiring Aria Attributes\n\nUse `PartiallyRequiredAriaTypes` to require WAI-Attributes for a TypeScript type:\n\n```ts\nimport type { PartiallyRequiredAriaTypes } from \"@ariatype/ariatype\";\n\n// Valid\nconst aria: PartiallyRequiredAriaTypes<\"aria-atomic\" | \"role\"> = {\n  \"aria-atomic\": \"true\",\n  role: \"alert\",\n};\n\n// Invalid\n// Property \"aria-atomic\" missing\nconst aria: PartiallyRequiredAriaTypes<\"aria-atomic\" | \"role\"> = {\n  role: \"alert\",\n};\n```\n\n### Example Use Case\n\nThe following example shows how Ariatype may be used to enforce type-safe WAI-ARIA attributes on a React component using `PartiallyRequiredAriaTypes`:\n\n```tsx\nimport type { PartiallyRequiredAriaTypes } from \"@ariatype/ariatype\";\nimport type { ReactNode } from \"react\";\n\ninterface Props extends\n  PartiallyRequiredAriaTypes<\"aria-atomic\" | \"role\"> {\n    children: ReactNode;\n  };\n\nexport const Component = ({ children, ...props }: Props) =>\n  <div {...props}>{children}</div>;\n\n// Valid\n<Component aria-atomic=\"true\" role=\"alert\">Component</Component>\n\n// Missing the following properties from type 'Props':\n// \"aria-atomic\", role\n<Component>Component</Component>\n```\n\n## Packages\n\nAriatype is a bundle of multiple packages:\n\n- [`@ariatype/aria-attributes`](https://github.com/ariatype/ariatype/tree/main/@ariatype/aria-attributes):\n  - `ariaAttributes`: all aria attributes\n  - `AriaAttribute`: aria attribute type\n  - `AriaAttributes`: aria attributes type\n- [`@ariatype/aria-attributes-drag-and-drop`](https://github.com/ariatype/ariatype/tree/main/@ariatype/aria-attributes-drag-and-drop):\n  - `ariaAttributesDragAndDrop`: all drag-and-drop aria attributes\n  - `AriaAttributeDragAndDrop`: drag-and-drop aria attribute type\n  - `AriaAttributesDragAndDrop`: drag-and-drop aria attributes type\n- [`@ariatype/aria-attributes-global`](https://github.com/ariatype/ariatype/tree/main/@ariatype/aria-attributes-global):\n  - `ariaAttributesGlobal`: all global aria attributes\n  - `AriaAttributeGlobal`: global aria attribute type\n  - `AriaAttributesGlobal`: global aria attributes type\n- [`@ariatype/aria-attributes-live-region`](https://github.com/ariatype/ariatype/tree/main/@ariatype/aria-attributes-live-region):\n  - `ariaAttributesLiveRegion`: all live region aria attributes\n  - `AriaAttributeLiveRegion`: live region aria attribute type\n  - `AriaAttributesLiveRegion`: live region aria attributes type\n- [`@ariatype/aria-attributes-relationship`](https://github.com/ariatype/ariatype/tree/main/@ariatype/aria-attributes-relationship):\n  - `ariaAttributesRelationship`: all relationship aria attributes\n  - `AriaAttributeRelationship`: relationship aria attribute type\n  - `AriaAttributesRelationship`: relationship aria attributes type\n- [`@ariatype/aria-attributes-widget`](https://github.com/ariatype/ariatype/tree/main/@ariatype/aria-attributes-widget):\n  - `ariaAttributesWidget`: all widget aria attributes\n  - `AriaAttributeWidget`: widget aria attribute type\n  - `AriaAttributesWidget`: widget aria attributes type\n- [`@ariatype/aria-roles`](https://github.com/ariatype/ariatype/tree/main/@ariatype/aria-roles):\n  - `ariaRoles`: all aria roles\n  - `AriaRole`: aria roles type\n  - `AriaRoles`: aria roles type\n- [`@ariatype/aria-roles-composite`](https://github.com/ariatype/ariatype/tree/main/@ariatype/aria-roles-composite):\n  - `ariaRolesComposite`: all composite aria roles\n  - `AriaRoleComposite`: composite aria roles type\n  - `AriaRolesComposite`: composite aria roles type\n- [`@ariatype/aria-roles-document-structure`](https://github.com/ariatype/ariatype/tree/main/@ariatype/aria-roles-document-structure):\n  - `ariaRolesDocumentStructure`: all document structure aria roles\n  - `AriaRoleDocumentStructure`: document structure aria roles type\n  - `AriaRolesDocumentStructure`: document structure aria roles type\n- [`@ariatype/aria-roles-generic`](https://github.com/ariatype/ariatype/tree/main/@ariatype/aria-roles-generic):\n  - `ariaRolesGeneric`: all generic aria roles\n  - `AriaRoleGeneric`: generic aria roles type\n  - `AriaRolesGeneric`: generic aria roles type\n- [`@ariatype/aria-roles-landmark`](https://github.com/ariatype/ariatype/tree/main/@ariatype/aria-roles-landmark):\n  - `ariaRolesLandmark`: all landmark aria roles\n  - `AriaRoleLandmark`: landmark aria roles type\n  - `AriaRolesLandmark`: landmark aria roles type\n- [`@ariatype/aria-roles-live-region`](https://github.com/ariatype/ariatype/tree/main/@ariatype/aria-roles-live-region):\n  - `ariaRolesLiveRegion`: all live region aria roles\n  - `AriaRoleLiveRegion`: live region aria roles type\n  - `AriaRolesLiveRegion`: live region aria roles type\n- [`@ariatype/aria-roles-widget`](https://github.com/ariatype/ariatype/tree/main/@ariatype/aria-roles-widget):\n  - `ariaRolesWidget`: all widget aria roles\n  - `AriaRoleWidget`: widget aria roles type\n  - `AriaRolesWidget`: widget aria roles type\n- [`@ariatype/aria-roles-window`](https://github.com/ariatype/ariatype/tree/main/@ariatype/aria-roles-window):\n  - `ariaRolesWindow`: all window aria roles\n  - `AriaRoleWindow`: window aria roles type\n  - `AriaRolesWindow`: window aria roles type\n\n## Resources\n\n- [https://www.w3.org/WAI/standards-guidelines/aria](https://www.w3.org/WAI/standards-guidelines/aria)\n","readmeFilename":"README.md"}