@@ -135,15 +135,13 @@ export interface ManifestCommunityUrls {
135135 discord: string | null
136136 reddit: string | null
137137 blog: string | null
138- [key : string ]: string | null
139138}
140139
141140// manifests/$schemas/ref/platform-urls.schema.json → ManifestPlatformUrls
142141export interface ManifestPlatformUrls {
143142 huggingface: string | null
144143 artificialAnalysis: string | null
145144 openrouter: string | null
146- [key : string ]: string | null
147145}
148146```
149147
@@ -177,7 +175,6 @@ export interface ManifestIDE extends ManifestBaseApp {}
177175// manifests/$schemas/extension.schema.json → ManifestExtension
178176export interface ManifestExtension extends ManifestBaseProduct {
179177 supportedIdes: ManifestIDESupport []
180- platforms? : ManifestPlatformElement []
181178}
182179```
183180
@@ -191,8 +188,8 @@ export interface ManifestModel extends ManifestVendorEntity {
191188 maxOutput: number
192189 tokenPricing: ManifestTokenPricing
193190 releaseDate: string | null
194- inputModalities: ( ' image ' | ' text ' | ' file ' ) []
195- capabilities: ( ' function-calling ' | ' tool-choice ' | ' structured-outputs ' | ' reasoning ' ) []
191+ inputModalities: ModelInputModality []
192+ capabilities: ModelCapability []
196193 benchmarks: ManifestBenchmarks
197194 platformUrls: ManifestPlatformUrls
198195}
@@ -207,7 +204,6 @@ export interface ManifestProvider extends ManifestVendorEntity {
207204
208205// manifests/$schemas/vendor.schema.json → ManifestVendor
209206export interface ManifestVendor extends ManifestEntity {
210- docsUrl? : string | null
211207 communityUrls: ManifestCommunityUrls
212208}
213209```
@@ -248,15 +244,9 @@ export interface ManifestCollectionItem {
248244
249245## Type Guards
250246
251- The system includes type guard functions for runtime type checking:
252-
253- ``` typescript
254- export function isManifestEntity(obj : unknown ): obj is ManifestEntity
255- export function isManifestVendorEntity(obj : unknown ): obj is ManifestVendorEntity
256- export function isManifestBaseProduct(obj : unknown ): obj is ManifestBaseProduct
257- export function isManifestModel(obj : unknown ): obj is ManifestModel
258- export function isManifestProvider(obj : unknown ): obj is ManifestProvider
259- ```
247+ Type guards are intentionally ** not** defined in ` src/types/manifests.ts ` to keep it type-only.
248+ If runtime guards are needed, define them in a separate module under ` src/lib/ ` (or ` src/types/guards/ ` )
249+ so client components don't accidentally pull in runtime code when importing types.
260250
261251---
262252
0 commit comments