@ai-billing/gateway 0.0.0 → 0.0.1

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.
package/dist/index.cjs CHANGED
@@ -45,13 +45,13 @@ function createGatewayV3Middleware(options) {
45
45
  generationId: responseId ?? gatewayMetadata?.gateway?.generationId ?? crypto.randomUUID(),
46
46
  modelId: model.modelId,
47
47
  provider: model.provider || "gateway",
48
- timestamp: Date.now(),
49
48
  tags,
50
49
  usage: {
51
50
  subProviderId: gatewayMetadata?.gateway?.routing?.finalProvider,
52
51
  inputTokens: usage?.inputTokens.total ?? 0,
53
52
  outputTokens: usage?.outputTokens.total ?? 0,
54
53
  cacheReadTokens: usage?.inputTokens.cacheRead ?? 0,
54
+ cacheWriteTokens: usage?.inputTokens.cacheWrite ?? 0,
55
55
  reasoningTokens: usage?.outputTokens.reasoning ?? 0,
56
56
  totalTokens: (usage?.outputTokens.total ?? 0) + (usage?.inputTokens.total ?? 0),
57
57
  rawProviderCost: gatewayCost,
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts","../src/ai-sdk/language-model-middleware/v3/language-model-v3-ai-gateway-billing-middleware.ts"],"sourcesContent":["export * from './ai-sdk/index.js';\n","import {\n createV3BillingMiddleware,\n type BaseBillingMiddlewareOptions,\n AiBillingExtractorError,\n DefaultTags,\n} from '@ai-billing/core';\nimport type { SharedV3ProviderMetadata } from '@ai-sdk/provider';\n\nexport interface GatewayAttempt {\n provider: string;\n internalModelId: string;\n providerApiModelId: string;\n credentialType: 'system' | 'user';\n success: boolean;\n startTime: number;\n endTime: number;\n statusCode: number;\n providerResponseId: string;\n}\n\nexport interface GatewayModelAttempt {\n modelId: string;\n canonicalSlug: string;\n success: boolean;\n providerAttemptCount: number;\n providerAttempts: GatewayAttempt[];\n}\n\nexport interface GatewayRouting {\n originalModelId: string;\n resolvedProvider: string;\n resolvedProviderApiModelId: string;\n internalResolvedModelId: string;\n fallbacksAvailable: string[];\n internalReasoning: string;\n planningReasoning: string;\n canonicalSlug: string;\n finalProvider: string;\n attempts: GatewayAttempt[];\n modelAttemptCount: number;\n modelAttempts: GatewayModelAttempt[];\n totalProviderAttemptCount: number;\n}\n\nexport type GatewayProviderMetadata = SharedV3ProviderMetadata & {\n gateway?: {\n generationId: string;\n cost?: string;\n marketCost?: string;\n enabledZeroDataRetention: boolean;\n enabledDisallowPromptTraining: boolean;\n routing?: GatewayRouting;\n };\n};\n\ntype GatewayMiddlewareOptions<TTags extends DefaultTags> =\n BaseBillingMiddlewareOptions<TTags>;\n\nexport function createGatewayV3Middleware<TTags extends DefaultTags>(\n options: GatewayMiddlewareOptions<TTags>,\n) {\n return createV3BillingMiddleware<TTags>({\n ...options,\n\n buildEvent: ({ model, usage, providerMetadata, responseId, tags }) => {\n const gatewayMetadata = providerMetadata as\n | GatewayProviderMetadata\n | undefined;\n\n const gatewayCost = Number(gatewayMetadata?.gateway?.cost ?? '0');\n const upstreamCost = Number(gatewayMetadata?.gateway?.marketCost ?? '0');\n\n const resolvedCost = gatewayCost || upstreamCost;\n\n if (!resolvedCost || isNaN(resolvedCost)) {\n throw new AiBillingExtractorError({\n message: `Expected cost or marketCost to be a valid number.`,\n cause: gatewayMetadata,\n });\n }\n\n return {\n generationId:\n responseId ??\n gatewayMetadata?.gateway?.generationId ??\n crypto.randomUUID(),\n modelId: model.modelId,\n provider: model.provider || 'gateway',\n timestamp: Date.now(),\n tags: tags,\n usage: {\n subProviderId: gatewayMetadata?.gateway?.routing?.finalProvider,\n inputTokens: usage?.inputTokens.total ?? 0,\n outputTokens: usage?.outputTokens.total ?? 0,\n cacheReadTokens: usage?.inputTokens.cacheRead ?? 0,\n reasoningTokens: usage?.outputTokens.reasoning ?? 0,\n totalTokens:\n (usage?.outputTokens.total ?? 0) + (usage?.inputTokens.total ?? 0),\n rawProviderCost: gatewayCost,\n rawUpstreamInferenceCost: upstreamCost,\n },\n cost: {\n amount: resolvedCost,\n unit: 'base',\n currency: 'USD',\n },\n };\n },\n });\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA,kBAKO;AAqDA,SAAS,0BACd,SACA;AACA,aAAO,uCAAiC;AAAA,IACtC,GAAG;AAAA,IAEH,YAAY,CAAC,EAAE,OAAO,OAAO,kBAAkB,YAAY,KAAK,MAAM;AACpE,YAAM,kBAAkB;AAIxB,YAAM,cAAc,OAAO,iBAAiB,SAAS,QAAQ,GAAG;AAChE,YAAM,eAAe,OAAO,iBAAiB,SAAS,cAAc,GAAG;AAEvE,YAAM,eAAe,eAAe;AAEpC,UAAI,CAAC,gBAAgB,MAAM,YAAY,GAAG;AACxC,cAAM,IAAI,oCAAwB;AAAA,UAChC,SAAS;AAAA,UACT,OAAO;AAAA,QACT,CAAC;AAAA,MACH;AAEA,aAAO;AAAA,QACL,cACE,cACA,iBAAiB,SAAS,gBAC1B,OAAO,WAAW;AAAA,QACpB,SAAS,MAAM;AAAA,QACf,UAAU,MAAM,YAAY;AAAA,QAC5B,WAAW,KAAK,IAAI;AAAA,QACpB;AAAA,QACA,OAAO;AAAA,UACL,eAAe,iBAAiB,SAAS,SAAS;AAAA,UAClD,aAAa,OAAO,YAAY,SAAS;AAAA,UACzC,cAAc,OAAO,aAAa,SAAS;AAAA,UAC3C,iBAAiB,OAAO,YAAY,aAAa;AAAA,UACjD,iBAAiB,OAAO,aAAa,aAAa;AAAA,UAClD,cACG,OAAO,aAAa,SAAS,MAAM,OAAO,YAAY,SAAS;AAAA,UAClE,iBAAiB;AAAA,UACjB,0BAA0B;AAAA,QAC5B;AAAA,QACA,MAAM;AAAA,UACJ,QAAQ;AAAA,UACR,MAAM;AAAA,UACN,UAAU;AAAA,QACZ;AAAA,MACF;AAAA,IACF;AAAA,EACF,CAAC;AACH;","names":[]}
1
+ {"version":3,"sources":["../src/index.ts","../src/ai-sdk/language-model-middleware/v3/language-model-v3-ai-gateway-billing-middleware.ts"],"sourcesContent":["export * from './ai-sdk/index.js';\n","import {\n createV3BillingMiddleware,\n type BaseBillingMiddlewareOptions,\n AiBillingExtractorError,\n DefaultTags,\n BillingEvent,\n} from '@ai-billing/core';\nimport type { SharedV3ProviderMetadata } from '@ai-sdk/provider';\n\nexport interface GatewayAttempt {\n provider: string;\n internalModelId: string;\n providerApiModelId: string;\n credentialType: 'system' | 'user';\n success: boolean;\n startTime: number;\n endTime: number;\n statusCode: number;\n providerResponseId: string;\n}\n\nexport interface GatewayModelAttempt {\n modelId: string;\n canonicalSlug: string;\n success: boolean;\n providerAttemptCount: number;\n providerAttempts: GatewayAttempt[];\n}\n\nexport interface GatewayRouting {\n originalModelId: string;\n resolvedProvider: string;\n resolvedProviderApiModelId: string;\n internalResolvedModelId: string;\n fallbacksAvailable: string[];\n internalReasoning: string;\n planningReasoning: string;\n canonicalSlug: string;\n finalProvider: string;\n attempts: GatewayAttempt[];\n modelAttemptCount: number;\n modelAttempts: GatewayModelAttempt[];\n totalProviderAttemptCount: number;\n}\n\nexport type GatewayProviderMetadata = SharedV3ProviderMetadata & {\n gateway?: {\n generationId: string;\n cost?: string;\n marketCost?: string;\n enabledZeroDataRetention: boolean;\n enabledDisallowPromptTraining: boolean;\n routing?: GatewayRouting;\n };\n};\n\ntype GatewayMiddlewareOptions<TTags extends DefaultTags> =\n BaseBillingMiddlewareOptions<TTags>;\n\nexport function createGatewayV3Middleware<TTags extends DefaultTags>(\n options: GatewayMiddlewareOptions<TTags>,\n) {\n return createV3BillingMiddleware<TTags>({\n ...options,\n\n buildEvent: ({ model, usage, providerMetadata, responseId, tags }) => {\n const gatewayMetadata = providerMetadata as\n | GatewayProviderMetadata\n | undefined;\n\n const gatewayCost = Number(gatewayMetadata?.gateway?.cost ?? '0');\n const upstreamCost = Number(gatewayMetadata?.gateway?.marketCost ?? '0');\n\n const resolvedCost = gatewayCost || upstreamCost;\n\n if (!resolvedCost || isNaN(resolvedCost)) {\n throw new AiBillingExtractorError({\n message: `Expected cost or marketCost to be a valid number.`,\n cause: gatewayMetadata,\n });\n }\n\n return {\n generationId:\n responseId ??\n gatewayMetadata?.gateway?.generationId ??\n crypto.randomUUID(),\n modelId: model.modelId,\n provider: model.provider || 'gateway',\n tags: tags,\n usage: {\n subProviderId: gatewayMetadata?.gateway?.routing?.finalProvider,\n inputTokens: usage?.inputTokens.total ?? 0,\n outputTokens: usage?.outputTokens.total ?? 0,\n cacheReadTokens: usage?.inputTokens.cacheRead ?? 0,\n cacheWriteTokens: usage?.inputTokens.cacheWrite ?? 0,\n reasoningTokens: usage?.outputTokens.reasoning ?? 0,\n totalTokens:\n (usage?.outputTokens.total ?? 0) + (usage?.inputTokens.total ?? 0),\n rawProviderCost: gatewayCost,\n rawUpstreamInferenceCost: upstreamCost,\n },\n cost: {\n amount: resolvedCost,\n unit: 'base',\n currency: 'USD',\n },\n } satisfies BillingEvent<TTags>;\n },\n });\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA,kBAMO;AAqDA,SAAS,0BACd,SACA;AACA,aAAO,uCAAiC;AAAA,IACtC,GAAG;AAAA,IAEH,YAAY,CAAC,EAAE,OAAO,OAAO,kBAAkB,YAAY,KAAK,MAAM;AACpE,YAAM,kBAAkB;AAIxB,YAAM,cAAc,OAAO,iBAAiB,SAAS,QAAQ,GAAG;AAChE,YAAM,eAAe,OAAO,iBAAiB,SAAS,cAAc,GAAG;AAEvE,YAAM,eAAe,eAAe;AAEpC,UAAI,CAAC,gBAAgB,MAAM,YAAY,GAAG;AACxC,cAAM,IAAI,oCAAwB;AAAA,UAChC,SAAS;AAAA,UACT,OAAO;AAAA,QACT,CAAC;AAAA,MACH;AAEA,aAAO;AAAA,QACL,cACE,cACA,iBAAiB,SAAS,gBAC1B,OAAO,WAAW;AAAA,QACpB,SAAS,MAAM;AAAA,QACf,UAAU,MAAM,YAAY;AAAA,QAC5B;AAAA,QACA,OAAO;AAAA,UACL,eAAe,iBAAiB,SAAS,SAAS;AAAA,UAClD,aAAa,OAAO,YAAY,SAAS;AAAA,UACzC,cAAc,OAAO,aAAa,SAAS;AAAA,UAC3C,iBAAiB,OAAO,YAAY,aAAa;AAAA,UACjD,kBAAkB,OAAO,YAAY,cAAc;AAAA,UACnD,iBAAiB,OAAO,aAAa,aAAa;AAAA,UAClD,cACG,OAAO,aAAa,SAAS,MAAM,OAAO,YAAY,SAAS;AAAA,UAClE,iBAAiB;AAAA,UACjB,0BAA0B;AAAA,QAC5B;AAAA,QACA,MAAM;AAAA,UACJ,QAAQ;AAAA,UACR,MAAM;AAAA,UACN,UAAU;AAAA,QACZ;AAAA,MACF;AAAA,IACF;AAAA,EACF,CAAC;AACH;","names":[]}
package/dist/index.js CHANGED
@@ -21,13 +21,13 @@ function createGatewayV3Middleware(options) {
21
21
  generationId: responseId ?? gatewayMetadata?.gateway?.generationId ?? crypto.randomUUID(),
22
22
  modelId: model.modelId,
23
23
  provider: model.provider || "gateway",
24
- timestamp: Date.now(),
25
24
  tags,
26
25
  usage: {
27
26
  subProviderId: gatewayMetadata?.gateway?.routing?.finalProvider,
28
27
  inputTokens: usage?.inputTokens.total ?? 0,
29
28
  outputTokens: usage?.outputTokens.total ?? 0,
30
29
  cacheReadTokens: usage?.inputTokens.cacheRead ?? 0,
30
+ cacheWriteTokens: usage?.inputTokens.cacheWrite ?? 0,
31
31
  reasoningTokens: usage?.outputTokens.reasoning ?? 0,
32
32
  totalTokens: (usage?.outputTokens.total ?? 0) + (usage?.inputTokens.total ?? 0),
33
33
  rawProviderCost: gatewayCost,
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/ai-sdk/language-model-middleware/v3/language-model-v3-ai-gateway-billing-middleware.ts"],"sourcesContent":["import {\n createV3BillingMiddleware,\n type BaseBillingMiddlewareOptions,\n AiBillingExtractorError,\n DefaultTags,\n} from '@ai-billing/core';\nimport type { SharedV3ProviderMetadata } from '@ai-sdk/provider';\n\nexport interface GatewayAttempt {\n provider: string;\n internalModelId: string;\n providerApiModelId: string;\n credentialType: 'system' | 'user';\n success: boolean;\n startTime: number;\n endTime: number;\n statusCode: number;\n providerResponseId: string;\n}\n\nexport interface GatewayModelAttempt {\n modelId: string;\n canonicalSlug: string;\n success: boolean;\n providerAttemptCount: number;\n providerAttempts: GatewayAttempt[];\n}\n\nexport interface GatewayRouting {\n originalModelId: string;\n resolvedProvider: string;\n resolvedProviderApiModelId: string;\n internalResolvedModelId: string;\n fallbacksAvailable: string[];\n internalReasoning: string;\n planningReasoning: string;\n canonicalSlug: string;\n finalProvider: string;\n attempts: GatewayAttempt[];\n modelAttemptCount: number;\n modelAttempts: GatewayModelAttempt[];\n totalProviderAttemptCount: number;\n}\n\nexport type GatewayProviderMetadata = SharedV3ProviderMetadata & {\n gateway?: {\n generationId: string;\n cost?: string;\n marketCost?: string;\n enabledZeroDataRetention: boolean;\n enabledDisallowPromptTraining: boolean;\n routing?: GatewayRouting;\n };\n};\n\ntype GatewayMiddlewareOptions<TTags extends DefaultTags> =\n BaseBillingMiddlewareOptions<TTags>;\n\nexport function createGatewayV3Middleware<TTags extends DefaultTags>(\n options: GatewayMiddlewareOptions<TTags>,\n) {\n return createV3BillingMiddleware<TTags>({\n ...options,\n\n buildEvent: ({ model, usage, providerMetadata, responseId, tags }) => {\n const gatewayMetadata = providerMetadata as\n | GatewayProviderMetadata\n | undefined;\n\n const gatewayCost = Number(gatewayMetadata?.gateway?.cost ?? '0');\n const upstreamCost = Number(gatewayMetadata?.gateway?.marketCost ?? '0');\n\n const resolvedCost = gatewayCost || upstreamCost;\n\n if (!resolvedCost || isNaN(resolvedCost)) {\n throw new AiBillingExtractorError({\n message: `Expected cost or marketCost to be a valid number.`,\n cause: gatewayMetadata,\n });\n }\n\n return {\n generationId:\n responseId ??\n gatewayMetadata?.gateway?.generationId ??\n crypto.randomUUID(),\n modelId: model.modelId,\n provider: model.provider || 'gateway',\n timestamp: Date.now(),\n tags: tags,\n usage: {\n subProviderId: gatewayMetadata?.gateway?.routing?.finalProvider,\n inputTokens: usage?.inputTokens.total ?? 0,\n outputTokens: usage?.outputTokens.total ?? 0,\n cacheReadTokens: usage?.inputTokens.cacheRead ?? 0,\n reasoningTokens: usage?.outputTokens.reasoning ?? 0,\n totalTokens:\n (usage?.outputTokens.total ?? 0) + (usage?.inputTokens.total ?? 0),\n rawProviderCost: gatewayCost,\n rawUpstreamInferenceCost: upstreamCost,\n },\n cost: {\n amount: resolvedCost,\n unit: 'base',\n currency: 'USD',\n },\n };\n },\n });\n}\n"],"mappings":";AAAA;AAAA,EACE;AAAA,EAEA;AAAA,OAEK;AAqDA,SAAS,0BACd,SACA;AACA,SAAO,0BAAiC;AAAA,IACtC,GAAG;AAAA,IAEH,YAAY,CAAC,EAAE,OAAO,OAAO,kBAAkB,YAAY,KAAK,MAAM;AACpE,YAAM,kBAAkB;AAIxB,YAAM,cAAc,OAAO,iBAAiB,SAAS,QAAQ,GAAG;AAChE,YAAM,eAAe,OAAO,iBAAiB,SAAS,cAAc,GAAG;AAEvE,YAAM,eAAe,eAAe;AAEpC,UAAI,CAAC,gBAAgB,MAAM,YAAY,GAAG;AACxC,cAAM,IAAI,wBAAwB;AAAA,UAChC,SAAS;AAAA,UACT,OAAO;AAAA,QACT,CAAC;AAAA,MACH;AAEA,aAAO;AAAA,QACL,cACE,cACA,iBAAiB,SAAS,gBAC1B,OAAO,WAAW;AAAA,QACpB,SAAS,MAAM;AAAA,QACf,UAAU,MAAM,YAAY;AAAA,QAC5B,WAAW,KAAK,IAAI;AAAA,QACpB;AAAA,QACA,OAAO;AAAA,UACL,eAAe,iBAAiB,SAAS,SAAS;AAAA,UAClD,aAAa,OAAO,YAAY,SAAS;AAAA,UACzC,cAAc,OAAO,aAAa,SAAS;AAAA,UAC3C,iBAAiB,OAAO,YAAY,aAAa;AAAA,UACjD,iBAAiB,OAAO,aAAa,aAAa;AAAA,UAClD,cACG,OAAO,aAAa,SAAS,MAAM,OAAO,YAAY,SAAS;AAAA,UAClE,iBAAiB;AAAA,UACjB,0BAA0B;AAAA,QAC5B;AAAA,QACA,MAAM;AAAA,UACJ,QAAQ;AAAA,UACR,MAAM;AAAA,UACN,UAAU;AAAA,QACZ;AAAA,MACF;AAAA,IACF;AAAA,EACF,CAAC;AACH;","names":[]}
1
+ {"version":3,"sources":["../src/ai-sdk/language-model-middleware/v3/language-model-v3-ai-gateway-billing-middleware.ts"],"sourcesContent":["import {\n createV3BillingMiddleware,\n type BaseBillingMiddlewareOptions,\n AiBillingExtractorError,\n DefaultTags,\n BillingEvent,\n} from '@ai-billing/core';\nimport type { SharedV3ProviderMetadata } from '@ai-sdk/provider';\n\nexport interface GatewayAttempt {\n provider: string;\n internalModelId: string;\n providerApiModelId: string;\n credentialType: 'system' | 'user';\n success: boolean;\n startTime: number;\n endTime: number;\n statusCode: number;\n providerResponseId: string;\n}\n\nexport interface GatewayModelAttempt {\n modelId: string;\n canonicalSlug: string;\n success: boolean;\n providerAttemptCount: number;\n providerAttempts: GatewayAttempt[];\n}\n\nexport interface GatewayRouting {\n originalModelId: string;\n resolvedProvider: string;\n resolvedProviderApiModelId: string;\n internalResolvedModelId: string;\n fallbacksAvailable: string[];\n internalReasoning: string;\n planningReasoning: string;\n canonicalSlug: string;\n finalProvider: string;\n attempts: GatewayAttempt[];\n modelAttemptCount: number;\n modelAttempts: GatewayModelAttempt[];\n totalProviderAttemptCount: number;\n}\n\nexport type GatewayProviderMetadata = SharedV3ProviderMetadata & {\n gateway?: {\n generationId: string;\n cost?: string;\n marketCost?: string;\n enabledZeroDataRetention: boolean;\n enabledDisallowPromptTraining: boolean;\n routing?: GatewayRouting;\n };\n};\n\ntype GatewayMiddlewareOptions<TTags extends DefaultTags> =\n BaseBillingMiddlewareOptions<TTags>;\n\nexport function createGatewayV3Middleware<TTags extends DefaultTags>(\n options: GatewayMiddlewareOptions<TTags>,\n) {\n return createV3BillingMiddleware<TTags>({\n ...options,\n\n buildEvent: ({ model, usage, providerMetadata, responseId, tags }) => {\n const gatewayMetadata = providerMetadata as\n | GatewayProviderMetadata\n | undefined;\n\n const gatewayCost = Number(gatewayMetadata?.gateway?.cost ?? '0');\n const upstreamCost = Number(gatewayMetadata?.gateway?.marketCost ?? '0');\n\n const resolvedCost = gatewayCost || upstreamCost;\n\n if (!resolvedCost || isNaN(resolvedCost)) {\n throw new AiBillingExtractorError({\n message: `Expected cost or marketCost to be a valid number.`,\n cause: gatewayMetadata,\n });\n }\n\n return {\n generationId:\n responseId ??\n gatewayMetadata?.gateway?.generationId ??\n crypto.randomUUID(),\n modelId: model.modelId,\n provider: model.provider || 'gateway',\n tags: tags,\n usage: {\n subProviderId: gatewayMetadata?.gateway?.routing?.finalProvider,\n inputTokens: usage?.inputTokens.total ?? 0,\n outputTokens: usage?.outputTokens.total ?? 0,\n cacheReadTokens: usage?.inputTokens.cacheRead ?? 0,\n cacheWriteTokens: usage?.inputTokens.cacheWrite ?? 0,\n reasoningTokens: usage?.outputTokens.reasoning ?? 0,\n totalTokens:\n (usage?.outputTokens.total ?? 0) + (usage?.inputTokens.total ?? 0),\n rawProviderCost: gatewayCost,\n rawUpstreamInferenceCost: upstreamCost,\n },\n cost: {\n amount: resolvedCost,\n unit: 'base',\n currency: 'USD',\n },\n } satisfies BillingEvent<TTags>;\n },\n });\n}\n"],"mappings":";AAAA;AAAA,EACE;AAAA,EAEA;AAAA,OAGK;AAqDA,SAAS,0BACd,SACA;AACA,SAAO,0BAAiC;AAAA,IACtC,GAAG;AAAA,IAEH,YAAY,CAAC,EAAE,OAAO,OAAO,kBAAkB,YAAY,KAAK,MAAM;AACpE,YAAM,kBAAkB;AAIxB,YAAM,cAAc,OAAO,iBAAiB,SAAS,QAAQ,GAAG;AAChE,YAAM,eAAe,OAAO,iBAAiB,SAAS,cAAc,GAAG;AAEvE,YAAM,eAAe,eAAe;AAEpC,UAAI,CAAC,gBAAgB,MAAM,YAAY,GAAG;AACxC,cAAM,IAAI,wBAAwB;AAAA,UAChC,SAAS;AAAA,UACT,OAAO;AAAA,QACT,CAAC;AAAA,MACH;AAEA,aAAO;AAAA,QACL,cACE,cACA,iBAAiB,SAAS,gBAC1B,OAAO,WAAW;AAAA,QACpB,SAAS,MAAM;AAAA,QACf,UAAU,MAAM,YAAY;AAAA,QAC5B;AAAA,QACA,OAAO;AAAA,UACL,eAAe,iBAAiB,SAAS,SAAS;AAAA,UAClD,aAAa,OAAO,YAAY,SAAS;AAAA,UACzC,cAAc,OAAO,aAAa,SAAS;AAAA,UAC3C,iBAAiB,OAAO,YAAY,aAAa;AAAA,UACjD,kBAAkB,OAAO,YAAY,cAAc;AAAA,UACnD,iBAAiB,OAAO,aAAa,aAAa;AAAA,UAClD,cACG,OAAO,aAAa,SAAS,MAAM,OAAO,YAAY,SAAS;AAAA,UAClE,iBAAiB;AAAA,UACjB,0BAA0B;AAAA,QAC5B;AAAA,QACA,MAAM;AAAA,UACJ,QAAQ;AAAA,UACR,MAAM;AAAA,UACN,UAAU;AAAA,QACZ;AAAA,MACF;AAAA,IACF;AAAA,EACF,CAAC;AACH;","names":[]}
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@ai-billing/gateway",
3
- "version": "0.0.0",
3
+ "version": "0.0.1",
4
4
  "license": "Apache-2.0",
5
5
  "type": "module",
6
6
  "repository": {
7
7
  "type": "git",
8
8
  "url": "git+https://github.com/narevai/ai-billing.git",
9
- "directory": "packages/core"
9
+ "directory": "packages/gateway"
10
10
  },
11
11
  "main": "./dist/index.js",
12
12
  "types": "./dist/index.d.ts",
@@ -23,39 +23,39 @@
23
23
  }
24
24
  },
25
25
  "publishConfig": {
26
- "access": "public"
26
+ "access": "public",
27
+ "provenance": true
27
28
  },
28
29
  "files": [
29
30
  "dist"
30
31
  ],
31
- "scripts": {
32
- "build": "tsup",
33
- "check-types": "tsc --noEmit",
34
- "lint": "oxlint",
35
- "dev": "tsup --watch",
36
- "test": "vitest run",
37
- "test:coverage": "vitest run --coverage",
38
- "test:watch": "vitest",
39
- "prepack": "node -e \"require('fs').copyFileSync('../../LICENSE', 'LICENSE')\"",
40
- "postpack": "node -e \"require('fs').rmSync('LICENSE', { force: true })\""
41
- },
42
32
  "dependencies": {
43
- "@ai-billing/core": "workspace:*"
33
+ "@ai-billing/core": "0.0.3"
44
34
  },
45
35
  "devDependencies": {
46
- "@ai-billing/typescript-config": "workspace:*",
47
- "@ai-billing/testing": "workspace:*",
48
- "tsup": "catalog:",
49
- "typescript": "catalog:",
50
- "vitest": "catalog:",
51
- "ai": "catalog:",
52
- "@ai-sdk/provider": "catalog:",
53
- "@edge-runtime/vm": "catalog:"
36
+ "tsup": "^8.5.1",
37
+ "typescript": "5.9.2",
38
+ "vitest": "4.1.1",
39
+ "ai": "^6.0.138",
40
+ "@ai-sdk/provider": "^3.0.8",
41
+ "@edge-runtime/vm": "^5.0.0",
42
+ "zod": "^4.3.6",
43
+ "@ai-billing/testing": "0.0.2",
44
+ "@ai-billing/typescript-config": "0.0.1"
54
45
  },
55
46
  "peerDependencies": {
56
47
  "ai": "^6.0.0"
57
48
  },
58
49
  "engines": {
59
50
  "node": ">=20.0.0"
51
+ },
52
+ "scripts": {
53
+ "build": "tsup",
54
+ "check-types": "tsc --noEmit",
55
+ "lint": "oxlint",
56
+ "dev": "tsup --watch",
57
+ "test": "vitest run",
58
+ "test:coverage": "vitest run --coverage",
59
+ "test:watch": "vitest"
60
60
  }
61
- }
61
+ }