UNPKG

@juspay/neurolink

Version:

The pipe layer of an AI nervous system: one interface connecting provider neurons to your application, across three inference types — generate, stream and decide. `decide` returns typed, calibrated judgements from a non-generative model (~400ms, ~$0.00002

41 lines (40 loc) • 2.42 kB
import type { ProxyTokenBudgetLease, ProxyTokenBudgetPolicy, ProxyTokenBudgetReservation, ProxyTokenBudgetRpcResponse, ProxyTokenBudgetSnapshot } from "../types/index.js"; /** Shared private session scope across every protocol and provider fallback. */ export declare function getProxyTokenBudgetSessionKey(headers: Pick<Headers, "get">): string; /** Local admission failures must not be hidden by automatic provider fallback. */ export declare function getProxyTokenBudgetError(error: unknown): { code: string; status: 400 | 429 | 503; retryable: false; message: string; } | null; /** Invalid configured limits fail closed instead of silently disabling protection. */ export declare function parseProxyTokenBudgetPolicy(value: unknown): ProxyTokenBudgetPolicy; export declare function getProxyTokenBudgetPolicy(): ProxyTokenBudgetPolicy | undefined; /** One atomic coordinator per supervisor; requests never write budget state to disk. */ export declare class ProxyTokenBudgetCoordinator { private readonly scope; private readonly now; private readonly maxKeys; private readonly maxLeases; private readonly buckets; private readonly leases; constructor(scope?: "process" | "supervisor", now?: () => number, maxKeys?: number, maxLeases?: number); private bucket; reserve(input: ProxyTokenBudgetReservation, owner?: string): { leaseId: string; snapshot: ProxyTokenBudgetSnapshot; }; settle(leaseId: string, owner: string, actualTotalTokens?: number, cancelled?: boolean): ProxyTokenBudgetSnapshot | undefined; ownerExited(owner: string): void; } /** Parent-side IPC hook is shared by every active and draining generation. */ export declare function handleProxyTokenBudgetMessage(value: unknown, owner: { pid: number; generation: number; }, reply: (response: ProxyTokenBudgetRpcResponse) => void): boolean; export declare function releaseProxyTokenBudgetOwner(pid: number, generation: number): void; /** Reserve before each upstream attempt; unknown provider usage retains its estimate. */ export declare function reserveProxyTokenBudget(input: ProxyTokenBudgetReservation): Promise<ProxyTokenBudgetLease>; /** Accounting acknowledgement loss must not turn delivered provider success into a stream failure. */ export declare function settleProxyTokenBudget(lease: ProxyTokenBudgetLease, actualTotalTokens?: number): Promise<void>;