@brotu/ai 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. package/CATALOG.md +387 -0
  2. package/LICENSE +21 -0
  3. package/README.md +115 -0
  4. package/dist/adapters/byteplus.adapter.d.ts +51 -0
  5. package/dist/adapters/byteplus.adapter.d.ts.map +1 -0
  6. package/dist/adapters/elevenlabs.adapter.d.ts +48 -0
  7. package/dist/adapters/elevenlabs.adapter.d.ts.map +1 -0
  8. package/dist/adapters/estimate.d.ts +10 -0
  9. package/dist/adapters/estimate.d.ts.map +1 -0
  10. package/dist/adapters/google.adapter.d.ts +52 -0
  11. package/dist/adapters/google.adapter.d.ts.map +1 -0
  12. package/dist/adapters/kling.adapter.d.ts +57 -0
  13. package/dist/adapters/kling.adapter.d.ts.map +1 -0
  14. package/dist/adapters/openai.adapter.d.ts +40 -0
  15. package/dist/adapters/openai.adapter.d.ts.map +1 -0
  16. package/dist/adapters/qwen.adapter.d.ts +53 -0
  17. package/dist/adapters/qwen.adapter.d.ts.map +1 -0
  18. package/dist/catalog.cjs +988 -0
  19. package/dist/catalog.d.ts +27 -0
  20. package/dist/catalog.d.ts.map +1 -0
  21. package/dist/catalog.js +20 -0
  22. package/dist/chunk-GKLTQ55S.js +1176 -0
  23. package/dist/client.d.ts +86 -0
  24. package/dist/client.d.ts.map +1 -0
  25. package/dist/constants/model.types.d.ts +118 -0
  26. package/dist/constants/model.types.d.ts.map +1 -0
  27. package/dist/helpers/result.d.ts +54 -0
  28. package/dist/helpers/result.d.ts.map +1 -0
  29. package/dist/index.cjs +3568 -0
  30. package/dist/index.d.ts +29 -0
  31. package/dist/index.d.ts.map +1 -0
  32. package/dist/index.js +2386 -0
  33. package/dist/lib/jobs.d.ts +46 -0
  34. package/dist/lib/jobs.d.ts.map +1 -0
  35. package/dist/lib/storage.d.ts +33 -0
  36. package/dist/lib/storage.d.ts.map +1 -0
  37. package/dist/ports/content-generator.port.d.ts +170 -0
  38. package/dist/ports/content-generator.port.d.ts.map +1 -0
  39. package/dist/providers/byteplus.models.d.ts +51 -0
  40. package/dist/providers/byteplus.models.d.ts.map +1 -0
  41. package/dist/providers/elevenlabs.models.d.ts +27 -0
  42. package/dist/providers/elevenlabs.models.d.ts.map +1 -0
  43. package/dist/providers/google.models.d.ts +42 -0
  44. package/dist/providers/google.models.d.ts.map +1 -0
  45. package/dist/providers/kling.models.d.ts +159 -0
  46. package/dist/providers/kling.models.d.ts.map +1 -0
  47. package/dist/providers/openai.models.d.ts +27 -0
  48. package/dist/providers/openai.models.d.ts.map +1 -0
  49. package/dist/providers/qwen.models.d.ts +88 -0
  50. package/dist/providers/qwen.models.d.ts.map +1 -0
  51. package/dist/types.d.ts +55 -0
  52. package/dist/types.d.ts.map +1 -0
  53. package/package.json +72 -0
@@ -0,0 +1,27 @@
1
+ import type { AIModelConfig } from "./constants/model.types";
2
+ import type { BrotuAIOptions, ResolvedProvider } from "./types";
3
+ /**
4
+ * Add models, or patch built-in ones, matching on id.
5
+ *
6
+ * Additive and process-wide on purpose: a model definition is static data, like
7
+ * a type, so two clients sharing it is correct. What differs per client is which
8
+ * providers it holds keys for, and that lives in the client's own options.
9
+ */
10
+ export declare function registerModels(models?: AIModelConfig[]): void;
11
+ /** Drop every registered model, leaving only the built-ins. For tests. */
12
+ export declare function resetCatalog(): void;
13
+ export declare function getModel(modelId: string): AIModelConfig | undefined;
14
+ export declare function getModels(): AIModelConfig[];
15
+ export declare function hasModel(modelId: string): boolean;
16
+ /** Providers with at least one model in the catalog. */
17
+ export declare function getProviders(): string[];
18
+ /**
19
+ * Pick the host and key that serve `modelId`.
20
+ *
21
+ * Every model names its own provider now that nothing is served by an
22
+ * aggregator, so there is no wallet to guess between.
23
+ */
24
+ export declare function resolveProvider(modelId: string, options: BrotuAIOptions): ResolvedProvider;
25
+ /** Models the caller can actually run, given the keys they supplied. */
26
+ export declare function getAvailableModels(options: BrotuAIOptions): AIModelConfig[];
27
+ //# sourceMappingURL=catalog.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../src/catalog.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAU7D,OAAO,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAkChE;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,MAAM,GAAE,aAAa,EAAO,GAAG,IAAI,CAUjE;AAED,0EAA0E;AAC1E,wBAAgB,YAAY,IAAI,IAAI,CAGnC;AAED,wBAAgB,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS,CAEnE;AAED,wBAAgB,SAAS,IAAI,aAAa,EAAE,CAE3C;AAED,wBAAgB,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAEjD;AAED,wDAAwD;AACxD,wBAAgB,YAAY,IAAI,MAAM,EAAE,CAQvC;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAC9B,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,cAAc,GACrB,gBAAgB,CA6BlB;AAED,wEAAwE;AACxE,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,cAAc,GAAG,aAAa,EAAE,CAI3E"}
@@ -0,0 +1,20 @@
1
+ import {
2
+ getAvailableModels,
3
+ getModel,
4
+ getModels,
5
+ getProviders,
6
+ hasModel,
7
+ registerModels,
8
+ resetCatalog,
9
+ resolveProvider
10
+ } from "./chunk-GKLTQ55S.js";
11
+ export {
12
+ getAvailableModels,
13
+ getModel,
14
+ getModels,
15
+ getProviders,
16
+ hasModel,
17
+ registerModels,
18
+ resetCatalog,
19
+ resolveProvider
20
+ };