@routstr/sdk 0.2.5 → 0.2.7
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/README.md +1 -2
- package/dist/client/index.d.mts +34 -6
- package/dist/client/index.d.ts +34 -6
- package/dist/client/index.js +773 -479
- package/dist/client/index.js.map +1 -1
- package/dist/client/index.mjs +773 -479
- package/dist/client/index.mjs.map +1 -1
- package/dist/discovery/index.js +1 -1
- package/dist/discovery/index.js.map +1 -1
- package/dist/discovery/index.mjs +1 -1
- package/dist/discovery/index.mjs.map +1 -1
- package/dist/index.d.mts +21 -9
- package/dist/index.d.ts +21 -9
- package/dist/index.js +897 -558
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +895 -559
- package/dist/index.mjs.map +1 -1
- package/dist/{interfaces-CluftN4z.d.ts → interfaces-B62Rw-dd.d.ts} +19 -14
- package/dist/{interfaces-C6Dr6hKy.d.mts → interfaces-C5fLD3jB.d.mts} +19 -14
- package/dist/storage/index.d.mts +39 -162
- package/dist/storage/index.d.ts +39 -162
- package/dist/storage/index.js +529 -193
- package/dist/storage/index.js.map +1 -1
- package/dist/storage/index.mjs +527 -194
- package/dist/storage/index.mjs.map +1 -1
- package/dist/store-DGeLPv9E.d.mts +172 -0
- package/dist/store-h7m23ffq.d.ts +172 -0
- package/dist/wallet/index.d.mts +26 -26
- package/dist/wallet/index.d.ts +26 -26
- package/dist/wallet/index.js +143 -271
- package/dist/wallet/index.js.map +1 -1
- package/dist/wallet/index.mjs +143 -271
- package/dist/wallet/index.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -55,20 +55,13 @@ interface ChildKeyEntry {
|
|
|
55
55
|
validityDate?: number;
|
|
56
56
|
createdAt: number;
|
|
57
57
|
}
|
|
58
|
+
interface XCashuTokenEntry {
|
|
59
|
+
baseUrl: string;
|
|
60
|
+
token: string;
|
|
61
|
+
createdAt: number;
|
|
62
|
+
tryCount: number;
|
|
63
|
+
}
|
|
58
64
|
interface StorageAdapter {
|
|
59
|
-
/** Get stored API token for a provider */
|
|
60
|
-
getToken(baseUrl: string): string | null;
|
|
61
|
-
/** Store API token for a provider */
|
|
62
|
-
setToken(baseUrl: string, token: string): void;
|
|
63
|
-
/** Remove API token for a provider */
|
|
64
|
-
removeToken(baseUrl: string): void;
|
|
65
|
-
/** Update balance for an existing stored token */
|
|
66
|
-
updateTokenBalance(baseUrl: string, balance: number): void;
|
|
67
|
-
/** Get all stored tokens as distribution (baseUrl -> amount in sats) */
|
|
68
|
-
getCachedTokenDistribution(): Array<{
|
|
69
|
-
baseUrl: string;
|
|
70
|
-
amount: number;
|
|
71
|
-
}>;
|
|
72
65
|
/** Save provider info to cache */
|
|
73
66
|
saveProviderInfo(baseUrl: string, info: ProviderInfo): void;
|
|
74
67
|
/** Get cached provider info */
|
|
@@ -112,6 +105,18 @@ interface StorageAdapter {
|
|
|
112
105
|
unit: "sat" | "msat";
|
|
113
106
|
createdAt?: number;
|
|
114
107
|
}>): void;
|
|
108
|
+
/** Get all stored xcashu tokens */
|
|
109
|
+
getXcashuTokens(): Record<string, XCashuTokenEntry[]>;
|
|
110
|
+
/** Get xcashu tokens for a specific baseUrl */
|
|
111
|
+
getXcashuTokensForBaseUrl(baseUrl: string): XCashuTokenEntry[];
|
|
112
|
+
/** Add an xcashu token for a baseUrl */
|
|
113
|
+
addXcashuToken(baseUrl: string, token: string): void;
|
|
114
|
+
/** Remove an xcashu token */
|
|
115
|
+
removeXcashuToken(baseUrl: string, token: string): void;
|
|
116
|
+
/** Clear all xcashu tokens for a baseUrl */
|
|
117
|
+
clearXcashuTokensForBaseUrl(baseUrl: string): void;
|
|
118
|
+
/** Update try count for a specific token */
|
|
119
|
+
updateXcashuTokenTryCount(token: string, tryCount: number): void;
|
|
115
120
|
}
|
|
116
121
|
/**
|
|
117
122
|
* ProviderRegistry - Provides access to provider/model data
|
|
@@ -168,4 +173,4 @@ interface RoutstrClientOptions {
|
|
|
168
173
|
relayUrls?: string[];
|
|
169
174
|
}
|
|
170
175
|
|
|
171
|
-
export type { ApiKeyEntry as A, ChildKeyEntry as C, ProviderRegistry as P, RoutstrClientOptions as R, StorageAdapter as S, WalletAdapter as W, StreamingCallbacks as a };
|
|
176
|
+
export type { ApiKeyEntry as A, ChildKeyEntry as C, ProviderRegistry as P, RoutstrClientOptions as R, StorageAdapter as S, WalletAdapter as W, XCashuTokenEntry as X, StreamingCallbacks as a };
|
|
@@ -55,20 +55,13 @@ interface ChildKeyEntry {
|
|
|
55
55
|
validityDate?: number;
|
|
56
56
|
createdAt: number;
|
|
57
57
|
}
|
|
58
|
+
interface XCashuTokenEntry {
|
|
59
|
+
baseUrl: string;
|
|
60
|
+
token: string;
|
|
61
|
+
createdAt: number;
|
|
62
|
+
tryCount: number;
|
|
63
|
+
}
|
|
58
64
|
interface StorageAdapter {
|
|
59
|
-
/** Get stored API token for a provider */
|
|
60
|
-
getToken(baseUrl: string): string | null;
|
|
61
|
-
/** Store API token for a provider */
|
|
62
|
-
setToken(baseUrl: string, token: string): void;
|
|
63
|
-
/** Remove API token for a provider */
|
|
64
|
-
removeToken(baseUrl: string): void;
|
|
65
|
-
/** Update balance for an existing stored token */
|
|
66
|
-
updateTokenBalance(baseUrl: string, balance: number): void;
|
|
67
|
-
/** Get all stored tokens as distribution (baseUrl -> amount in sats) */
|
|
68
|
-
getCachedTokenDistribution(): Array<{
|
|
69
|
-
baseUrl: string;
|
|
70
|
-
amount: number;
|
|
71
|
-
}>;
|
|
72
65
|
/** Save provider info to cache */
|
|
73
66
|
saveProviderInfo(baseUrl: string, info: ProviderInfo): void;
|
|
74
67
|
/** Get cached provider info */
|
|
@@ -112,6 +105,18 @@ interface StorageAdapter {
|
|
|
112
105
|
unit: "sat" | "msat";
|
|
113
106
|
createdAt?: number;
|
|
114
107
|
}>): void;
|
|
108
|
+
/** Get all stored xcashu tokens */
|
|
109
|
+
getXcashuTokens(): Record<string, XCashuTokenEntry[]>;
|
|
110
|
+
/** Get xcashu tokens for a specific baseUrl */
|
|
111
|
+
getXcashuTokensForBaseUrl(baseUrl: string): XCashuTokenEntry[];
|
|
112
|
+
/** Add an xcashu token for a baseUrl */
|
|
113
|
+
addXcashuToken(baseUrl: string, token: string): void;
|
|
114
|
+
/** Remove an xcashu token */
|
|
115
|
+
removeXcashuToken(baseUrl: string, token: string): void;
|
|
116
|
+
/** Clear all xcashu tokens for a baseUrl */
|
|
117
|
+
clearXcashuTokensForBaseUrl(baseUrl: string): void;
|
|
118
|
+
/** Update try count for a specific token */
|
|
119
|
+
updateXcashuTokenTryCount(token: string, tryCount: number): void;
|
|
115
120
|
}
|
|
116
121
|
/**
|
|
117
122
|
* ProviderRegistry - Provides access to provider/model data
|
|
@@ -168,4 +173,4 @@ interface RoutstrClientOptions {
|
|
|
168
173
|
relayUrls?: string[];
|
|
169
174
|
}
|
|
170
175
|
|
|
171
|
-
export type { ApiKeyEntry as A, ChildKeyEntry as C, ProviderRegistry as P, RoutstrClientOptions as R, StorageAdapter as S, WalletAdapter as W, StreamingCallbacks as a };
|
|
176
|
+
export type { ApiKeyEntry as A, ChildKeyEntry as C, ProviderRegistry as P, RoutstrClientOptions as R, StorageAdapter as S, WalletAdapter as W, XCashuTokenEntry as X, StreamingCallbacks as a };
|
package/dist/storage/index.d.mts
CHANGED
|
@@ -1,109 +1,10 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
1
|
+
import { a as StorageDriver, U as UsageTrackingDriver, b as UsageTrackingEntry, S as SdkStore } from '../store-DGeLPv9E.mjs';
|
|
2
|
+
export { L as ListUsageTrackingOptions, c as createDiscoveryAdapterFromStore, d as createProviderRegistryFromStore, e as createSdkStore, f as createStorageAdapterFromStore } from '../store-DGeLPv9E.mjs';
|
|
3
3
|
import { D as DiscoveryAdapter } from '../interfaces-BWJJTCXO.mjs';
|
|
4
|
-
import { P as ProviderRegistry, S as StorageAdapter } from '../interfaces-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
setItem<T>(key: string, value: T): Promise<void>;
|
|
9
|
-
removeItem(key: string): Promise<void>;
|
|
10
|
-
}
|
|
11
|
-
interface SdkStorageState {
|
|
12
|
-
modelsFromAllProviders: Record<string, Model[]>;
|
|
13
|
-
lastUsedModel: string | null;
|
|
14
|
-
baseUrlsList: string[];
|
|
15
|
-
disabledProviders: string[];
|
|
16
|
-
mintsFromAllProviders: Record<string, string[]>;
|
|
17
|
-
infoFromAllProviders: Record<string, ProviderInfo>;
|
|
18
|
-
lastModelsUpdate: Record<string, number>;
|
|
19
|
-
lastBaseUrlsUpdate: number | null;
|
|
20
|
-
cachedTokens: Array<{
|
|
21
|
-
baseUrl: string;
|
|
22
|
-
token: string;
|
|
23
|
-
balance: number;
|
|
24
|
-
lastUsed: number | null;
|
|
25
|
-
}>;
|
|
26
|
-
apiKeys: Array<{
|
|
27
|
-
baseUrl: string;
|
|
28
|
-
key: string;
|
|
29
|
-
balance: number;
|
|
30
|
-
lastUsed: number | null;
|
|
31
|
-
}>;
|
|
32
|
-
childKeys: Array<{
|
|
33
|
-
parentBaseUrl: string;
|
|
34
|
-
childKey: string;
|
|
35
|
-
balance: number;
|
|
36
|
-
balanceLimit?: number;
|
|
37
|
-
validityDate?: number;
|
|
38
|
-
createdAt: number;
|
|
39
|
-
}>;
|
|
40
|
-
routstr21Models: string[];
|
|
41
|
-
lastRoutstr21ModelsUpdate: number | null;
|
|
42
|
-
cachedReceiveTokens: Array<{
|
|
43
|
-
token: string;
|
|
44
|
-
amount: number;
|
|
45
|
-
unit: "sat" | "msat";
|
|
46
|
-
createdAt: number;
|
|
47
|
-
}>;
|
|
48
|
-
clientIds: Array<{
|
|
49
|
-
clientId: string;
|
|
50
|
-
name: string;
|
|
51
|
-
apiKey: string;
|
|
52
|
-
createdAt: number;
|
|
53
|
-
lastUsed?: number | null;
|
|
54
|
-
}>;
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
declare const localStorageDriver: StorageDriver;
|
|
58
|
-
|
|
59
|
-
declare const createMemoryDriver: (seed?: Record<string, string>) => StorageDriver;
|
|
60
|
-
|
|
61
|
-
interface SqliteDriverOptions {
|
|
62
|
-
dbPath?: string;
|
|
63
|
-
tableName?: string;
|
|
64
|
-
}
|
|
65
|
-
declare const createSqliteDriver: (options?: SqliteDriverOptions) => StorageDriver;
|
|
66
|
-
|
|
67
|
-
interface IndexedDBDriverOptions {
|
|
68
|
-
dbName?: string;
|
|
69
|
-
storeName?: string;
|
|
70
|
-
}
|
|
71
|
-
declare const createIndexedDBDriver: (options?: IndexedDBDriverOptions) => StorageDriver;
|
|
72
|
-
|
|
73
|
-
interface UsageTrackingEntry {
|
|
74
|
-
id: string;
|
|
75
|
-
timestamp: number;
|
|
76
|
-
modelId: string;
|
|
77
|
-
baseUrl: string;
|
|
78
|
-
requestId: string;
|
|
79
|
-
cost: number;
|
|
80
|
-
satsCost: number;
|
|
81
|
-
promptTokens: number;
|
|
82
|
-
completionTokens: number;
|
|
83
|
-
totalTokens: number;
|
|
84
|
-
client?: string;
|
|
85
|
-
sessionId?: string;
|
|
86
|
-
tags?: string[];
|
|
87
|
-
}
|
|
88
|
-
|
|
89
|
-
interface ListUsageTrackingOptions {
|
|
90
|
-
limit?: number;
|
|
91
|
-
before?: number;
|
|
92
|
-
after?: number;
|
|
93
|
-
modelId?: string;
|
|
94
|
-
baseUrl?: string;
|
|
95
|
-
sessionId?: string;
|
|
96
|
-
client?: string;
|
|
97
|
-
}
|
|
98
|
-
interface UsageTrackingDriver {
|
|
99
|
-
migrate(): Promise<void>;
|
|
100
|
-
append(entry: UsageTrackingEntry): Promise<void>;
|
|
101
|
-
appendMany(entries: UsageTrackingEntry[]): Promise<void>;
|
|
102
|
-
list(options?: ListUsageTrackingOptions): Promise<UsageTrackingEntry[]>;
|
|
103
|
-
count(options?: Omit<ListUsageTrackingOptions, "limit">): Promise<number>;
|
|
104
|
-
deleteOlderThan(timestamp: number): Promise<number>;
|
|
105
|
-
clear(): Promise<void>;
|
|
106
|
-
}
|
|
4
|
+
import { P as ProviderRegistry, S as StorageAdapter } from '../interfaces-C5fLD3jB.mjs';
|
|
5
|
+
export { X as XCashuTokenEntry } from '../interfaces-C5fLD3jB.mjs';
|
|
6
|
+
import 'zustand/vanilla';
|
|
7
|
+
import '../types-BYj_8c5c.mjs';
|
|
107
8
|
|
|
108
9
|
interface IndexedDBUsageTrackingDriverOptions {
|
|
109
10
|
dbName?: string;
|
|
@@ -119,65 +20,34 @@ interface SqliteUsageTrackingDriverOptions {
|
|
|
119
20
|
}
|
|
120
21
|
declare const createSqliteUsageTrackingDriver: (options?: SqliteUsageTrackingDriverOptions) => UsageTrackingDriver;
|
|
121
22
|
|
|
23
|
+
interface BunSqliteUsageTrackingDriverOptions {
|
|
24
|
+
dbPath?: string;
|
|
25
|
+
tableName?: string;
|
|
26
|
+
legacyStorageDriver?: StorageDriver;
|
|
27
|
+
sqlite?: {
|
|
28
|
+
Database: any;
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
declare const createBunSqliteUsageTrackingDriver: (options?: BunSqliteUsageTrackingDriverOptions) => UsageTrackingDriver;
|
|
32
|
+
|
|
122
33
|
declare const createMemoryUsageTrackingDriver: (seed?: UsageTrackingEntry[]) => UsageTrackingDriver;
|
|
123
34
|
|
|
124
|
-
|
|
125
|
-
|
|
35
|
+
declare const localStorageDriver: StorageDriver;
|
|
36
|
+
|
|
37
|
+
declare const createMemoryDriver: (seed?: Record<string, string>) => StorageDriver;
|
|
38
|
+
|
|
39
|
+
interface SqliteDriverOptions {
|
|
40
|
+
dbPath?: string;
|
|
41
|
+
tableName?: string;
|
|
126
42
|
}
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
setMintsFromAllProviders: (value: Record<string, string[]>) => void;
|
|
134
|
-
setInfoFromAllProviders: (value: Record<string, ProviderInfo>) => void;
|
|
135
|
-
setLastModelsUpdate: (value: Record<string, number>) => void;
|
|
136
|
-
setCachedTokens: (value: Array<{
|
|
137
|
-
baseUrl: string;
|
|
138
|
-
token: string;
|
|
139
|
-
balance?: number;
|
|
140
|
-
lastUsed?: number | null;
|
|
141
|
-
}> | ((current: SdkStorageStore["cachedTokens"]) => SdkStorageStore["cachedTokens"])) => void;
|
|
142
|
-
setApiKeys: (value: Array<{
|
|
143
|
-
baseUrl: string;
|
|
144
|
-
key: string;
|
|
145
|
-
balance?: number;
|
|
146
|
-
lastUsed?: number | null;
|
|
147
|
-
}> | ((current: SdkStorageStore["apiKeys"]) => SdkStorageStore["apiKeys"])) => void;
|
|
148
|
-
setChildKeys: (value: Array<{
|
|
149
|
-
parentBaseUrl: string;
|
|
150
|
-
childKey: string;
|
|
151
|
-
balance?: number;
|
|
152
|
-
balanceLimit?: number;
|
|
153
|
-
validityDate?: number;
|
|
154
|
-
createdAt?: number;
|
|
155
|
-
}>) => void;
|
|
156
|
-
setRoutstr21Models: (value: string[]) => void;
|
|
157
|
-
setRoutstr21ModelsLastUpdate: (value: number | null) => void;
|
|
158
|
-
setCachedReceiveTokens: (value: Array<{
|
|
159
|
-
token: string;
|
|
160
|
-
amount: number;
|
|
161
|
-
unit: "sat" | "msat";
|
|
162
|
-
createdAt?: number;
|
|
163
|
-
}>) => void;
|
|
164
|
-
setClientIds: (value: Array<{
|
|
165
|
-
clientId: string;
|
|
166
|
-
name: string;
|
|
167
|
-
apiKey: string;
|
|
168
|
-
createdAt?: number;
|
|
169
|
-
lastUsed?: number | null;
|
|
170
|
-
}> | ((current: SdkStorageStore["clientIds"]) => SdkStorageStore["clientIds"])) => void;
|
|
43
|
+
declare const createSqliteDriver: (options?: SqliteDriverOptions) => StorageDriver;
|
|
44
|
+
declare function createBunSqliteDriver(dbPath: string): Promise<StorageDriver>;
|
|
45
|
+
|
|
46
|
+
interface IndexedDBDriverOptions {
|
|
47
|
+
dbName?: string;
|
|
48
|
+
storeName?: string;
|
|
171
49
|
}
|
|
172
|
-
|
|
173
|
-
type SdkStore = StoreApi<SdkStorageStore>;
|
|
174
|
-
declare const createSdkStore: ({ driver, }: SdkStoreOptions) => {
|
|
175
|
-
store: SdkStore;
|
|
176
|
-
hydrate: Promise<void>;
|
|
177
|
-
};
|
|
178
|
-
declare const createDiscoveryAdapterFromStore: (store: SdkStore) => DiscoveryAdapter;
|
|
179
|
-
declare const createStorageAdapterFromStore: (store: SdkStore) => StorageAdapter;
|
|
180
|
-
declare const createProviderRegistryFromStore: (store: SdkStore) => ProviderRegistry;
|
|
50
|
+
declare const createIndexedDBDriver: (options?: IndexedDBDriverOptions) => StorageDriver;
|
|
181
51
|
|
|
182
52
|
declare const SDK_STORAGE_KEYS: {
|
|
183
53
|
readonly MODELS_FROM_ALL_PROVIDERS: "modelsFromAllProviders";
|
|
@@ -188,21 +58,28 @@ declare const SDK_STORAGE_KEYS: {
|
|
|
188
58
|
readonly INFO_FROM_ALL_PROVIDERS: "info_from_all_providers";
|
|
189
59
|
readonly LAST_MODELS_UPDATE: "lastModelsUpdate";
|
|
190
60
|
readonly LAST_BASE_URLS_UPDATE: "lastBaseUrlsUpdate";
|
|
191
|
-
readonly LOCAL_CASHU_TOKENS: "local_cashu_tokens";
|
|
192
61
|
readonly API_KEYS: "api_keys";
|
|
193
62
|
readonly CHILD_KEYS: "child_keys";
|
|
63
|
+
readonly XCASHU_TOKENS: "xcashu_tokens";
|
|
194
64
|
readonly ROUTSTR21_MODELS: "routstr21Models";
|
|
195
65
|
readonly LAST_ROUTSTR21_MODELS_UPDATE: "lastRoutstr21ModelsUpdate";
|
|
196
66
|
readonly CACHED_RECEIVE_TOKENS: "cached_receive_tokens";
|
|
197
67
|
readonly USAGE_TRACKING: "usage_tracking";
|
|
198
68
|
readonly CLIENT_IDS: "client_ids";
|
|
69
|
+
readonly FAILED_PROVIDERS: "failed_providers";
|
|
70
|
+
readonly LAST_FAILED: "last_failed";
|
|
71
|
+
readonly PROVIDERS_ON_COOLDOWN: "providers_on_cooldown";
|
|
199
72
|
};
|
|
200
73
|
|
|
201
74
|
declare const getDefaultSdkDriver: () => StorageDriver;
|
|
202
75
|
declare const getDefaultSdkStore: () => Promise<SdkStore>;
|
|
203
76
|
declare const getDefaultUsageTrackingDriver: () => UsageTrackingDriver;
|
|
77
|
+
/**
|
|
78
|
+
* Allow setting a custom usage tracking driver (useful for routstrd to use proper DB path)
|
|
79
|
+
*/
|
|
80
|
+
declare const setDefaultUsageTrackingDriver: (driver: UsageTrackingDriver) => void;
|
|
204
81
|
declare const getDefaultDiscoveryAdapter: () => Promise<DiscoveryAdapter>;
|
|
205
82
|
declare const getDefaultStorageAdapter: () => Promise<StorageAdapter>;
|
|
206
83
|
declare const getDefaultProviderRegistry: () => Promise<ProviderRegistry>;
|
|
207
84
|
|
|
208
|
-
export { DiscoveryAdapter,
|
|
85
|
+
export { DiscoveryAdapter, ProviderRegistry, SDK_STORAGE_KEYS, SdkStore, StorageAdapter, StorageDriver, UsageTrackingDriver, UsageTrackingEntry, createBunSqliteDriver, createBunSqliteUsageTrackingDriver, createIndexedDBDriver, createIndexedDBUsageTrackingDriver, createMemoryDriver, createMemoryUsageTrackingDriver, createSqliteDriver, createSqliteUsageTrackingDriver, getDefaultDiscoveryAdapter, getDefaultProviderRegistry, getDefaultSdkDriver, getDefaultSdkStore, getDefaultStorageAdapter, getDefaultUsageTrackingDriver, localStorageDriver, setDefaultUsageTrackingDriver };
|
package/dist/storage/index.d.ts
CHANGED
|
@@ -1,109 +1,10 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
1
|
+
import { a as StorageDriver, U as UsageTrackingDriver, b as UsageTrackingEntry, S as SdkStore } from '../store-h7m23ffq.js';
|
|
2
|
+
export { L as ListUsageTrackingOptions, c as createDiscoveryAdapterFromStore, d as createProviderRegistryFromStore, e as createSdkStore, f as createStorageAdapterFromStore } from '../store-h7m23ffq.js';
|
|
3
3
|
import { D as DiscoveryAdapter } from '../interfaces-BxDEka72.js';
|
|
4
|
-
import { P as ProviderRegistry, S as StorageAdapter } from '../interfaces-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
setItem<T>(key: string, value: T): Promise<void>;
|
|
9
|
-
removeItem(key: string): Promise<void>;
|
|
10
|
-
}
|
|
11
|
-
interface SdkStorageState {
|
|
12
|
-
modelsFromAllProviders: Record<string, Model[]>;
|
|
13
|
-
lastUsedModel: string | null;
|
|
14
|
-
baseUrlsList: string[];
|
|
15
|
-
disabledProviders: string[];
|
|
16
|
-
mintsFromAllProviders: Record<string, string[]>;
|
|
17
|
-
infoFromAllProviders: Record<string, ProviderInfo>;
|
|
18
|
-
lastModelsUpdate: Record<string, number>;
|
|
19
|
-
lastBaseUrlsUpdate: number | null;
|
|
20
|
-
cachedTokens: Array<{
|
|
21
|
-
baseUrl: string;
|
|
22
|
-
token: string;
|
|
23
|
-
balance: number;
|
|
24
|
-
lastUsed: number | null;
|
|
25
|
-
}>;
|
|
26
|
-
apiKeys: Array<{
|
|
27
|
-
baseUrl: string;
|
|
28
|
-
key: string;
|
|
29
|
-
balance: number;
|
|
30
|
-
lastUsed: number | null;
|
|
31
|
-
}>;
|
|
32
|
-
childKeys: Array<{
|
|
33
|
-
parentBaseUrl: string;
|
|
34
|
-
childKey: string;
|
|
35
|
-
balance: number;
|
|
36
|
-
balanceLimit?: number;
|
|
37
|
-
validityDate?: number;
|
|
38
|
-
createdAt: number;
|
|
39
|
-
}>;
|
|
40
|
-
routstr21Models: string[];
|
|
41
|
-
lastRoutstr21ModelsUpdate: number | null;
|
|
42
|
-
cachedReceiveTokens: Array<{
|
|
43
|
-
token: string;
|
|
44
|
-
amount: number;
|
|
45
|
-
unit: "sat" | "msat";
|
|
46
|
-
createdAt: number;
|
|
47
|
-
}>;
|
|
48
|
-
clientIds: Array<{
|
|
49
|
-
clientId: string;
|
|
50
|
-
name: string;
|
|
51
|
-
apiKey: string;
|
|
52
|
-
createdAt: number;
|
|
53
|
-
lastUsed?: number | null;
|
|
54
|
-
}>;
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
declare const localStorageDriver: StorageDriver;
|
|
58
|
-
|
|
59
|
-
declare const createMemoryDriver: (seed?: Record<string, string>) => StorageDriver;
|
|
60
|
-
|
|
61
|
-
interface SqliteDriverOptions {
|
|
62
|
-
dbPath?: string;
|
|
63
|
-
tableName?: string;
|
|
64
|
-
}
|
|
65
|
-
declare const createSqliteDriver: (options?: SqliteDriverOptions) => StorageDriver;
|
|
66
|
-
|
|
67
|
-
interface IndexedDBDriverOptions {
|
|
68
|
-
dbName?: string;
|
|
69
|
-
storeName?: string;
|
|
70
|
-
}
|
|
71
|
-
declare const createIndexedDBDriver: (options?: IndexedDBDriverOptions) => StorageDriver;
|
|
72
|
-
|
|
73
|
-
interface UsageTrackingEntry {
|
|
74
|
-
id: string;
|
|
75
|
-
timestamp: number;
|
|
76
|
-
modelId: string;
|
|
77
|
-
baseUrl: string;
|
|
78
|
-
requestId: string;
|
|
79
|
-
cost: number;
|
|
80
|
-
satsCost: number;
|
|
81
|
-
promptTokens: number;
|
|
82
|
-
completionTokens: number;
|
|
83
|
-
totalTokens: number;
|
|
84
|
-
client?: string;
|
|
85
|
-
sessionId?: string;
|
|
86
|
-
tags?: string[];
|
|
87
|
-
}
|
|
88
|
-
|
|
89
|
-
interface ListUsageTrackingOptions {
|
|
90
|
-
limit?: number;
|
|
91
|
-
before?: number;
|
|
92
|
-
after?: number;
|
|
93
|
-
modelId?: string;
|
|
94
|
-
baseUrl?: string;
|
|
95
|
-
sessionId?: string;
|
|
96
|
-
client?: string;
|
|
97
|
-
}
|
|
98
|
-
interface UsageTrackingDriver {
|
|
99
|
-
migrate(): Promise<void>;
|
|
100
|
-
append(entry: UsageTrackingEntry): Promise<void>;
|
|
101
|
-
appendMany(entries: UsageTrackingEntry[]): Promise<void>;
|
|
102
|
-
list(options?: ListUsageTrackingOptions): Promise<UsageTrackingEntry[]>;
|
|
103
|
-
count(options?: Omit<ListUsageTrackingOptions, "limit">): Promise<number>;
|
|
104
|
-
deleteOlderThan(timestamp: number): Promise<number>;
|
|
105
|
-
clear(): Promise<void>;
|
|
106
|
-
}
|
|
4
|
+
import { P as ProviderRegistry, S as StorageAdapter } from '../interfaces-B62Rw-dd.js';
|
|
5
|
+
export { X as XCashuTokenEntry } from '../interfaces-B62Rw-dd.js';
|
|
6
|
+
import 'zustand/vanilla';
|
|
7
|
+
import '../types-BYj_8c5c.js';
|
|
107
8
|
|
|
108
9
|
interface IndexedDBUsageTrackingDriverOptions {
|
|
109
10
|
dbName?: string;
|
|
@@ -119,65 +20,34 @@ interface SqliteUsageTrackingDriverOptions {
|
|
|
119
20
|
}
|
|
120
21
|
declare const createSqliteUsageTrackingDriver: (options?: SqliteUsageTrackingDriverOptions) => UsageTrackingDriver;
|
|
121
22
|
|
|
23
|
+
interface BunSqliteUsageTrackingDriverOptions {
|
|
24
|
+
dbPath?: string;
|
|
25
|
+
tableName?: string;
|
|
26
|
+
legacyStorageDriver?: StorageDriver;
|
|
27
|
+
sqlite?: {
|
|
28
|
+
Database: any;
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
declare const createBunSqliteUsageTrackingDriver: (options?: BunSqliteUsageTrackingDriverOptions) => UsageTrackingDriver;
|
|
32
|
+
|
|
122
33
|
declare const createMemoryUsageTrackingDriver: (seed?: UsageTrackingEntry[]) => UsageTrackingDriver;
|
|
123
34
|
|
|
124
|
-
|
|
125
|
-
|
|
35
|
+
declare const localStorageDriver: StorageDriver;
|
|
36
|
+
|
|
37
|
+
declare const createMemoryDriver: (seed?: Record<string, string>) => StorageDriver;
|
|
38
|
+
|
|
39
|
+
interface SqliteDriverOptions {
|
|
40
|
+
dbPath?: string;
|
|
41
|
+
tableName?: string;
|
|
126
42
|
}
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
setMintsFromAllProviders: (value: Record<string, string[]>) => void;
|
|
134
|
-
setInfoFromAllProviders: (value: Record<string, ProviderInfo>) => void;
|
|
135
|
-
setLastModelsUpdate: (value: Record<string, number>) => void;
|
|
136
|
-
setCachedTokens: (value: Array<{
|
|
137
|
-
baseUrl: string;
|
|
138
|
-
token: string;
|
|
139
|
-
balance?: number;
|
|
140
|
-
lastUsed?: number | null;
|
|
141
|
-
}> | ((current: SdkStorageStore["cachedTokens"]) => SdkStorageStore["cachedTokens"])) => void;
|
|
142
|
-
setApiKeys: (value: Array<{
|
|
143
|
-
baseUrl: string;
|
|
144
|
-
key: string;
|
|
145
|
-
balance?: number;
|
|
146
|
-
lastUsed?: number | null;
|
|
147
|
-
}> | ((current: SdkStorageStore["apiKeys"]) => SdkStorageStore["apiKeys"])) => void;
|
|
148
|
-
setChildKeys: (value: Array<{
|
|
149
|
-
parentBaseUrl: string;
|
|
150
|
-
childKey: string;
|
|
151
|
-
balance?: number;
|
|
152
|
-
balanceLimit?: number;
|
|
153
|
-
validityDate?: number;
|
|
154
|
-
createdAt?: number;
|
|
155
|
-
}>) => void;
|
|
156
|
-
setRoutstr21Models: (value: string[]) => void;
|
|
157
|
-
setRoutstr21ModelsLastUpdate: (value: number | null) => void;
|
|
158
|
-
setCachedReceiveTokens: (value: Array<{
|
|
159
|
-
token: string;
|
|
160
|
-
amount: number;
|
|
161
|
-
unit: "sat" | "msat";
|
|
162
|
-
createdAt?: number;
|
|
163
|
-
}>) => void;
|
|
164
|
-
setClientIds: (value: Array<{
|
|
165
|
-
clientId: string;
|
|
166
|
-
name: string;
|
|
167
|
-
apiKey: string;
|
|
168
|
-
createdAt?: number;
|
|
169
|
-
lastUsed?: number | null;
|
|
170
|
-
}> | ((current: SdkStorageStore["clientIds"]) => SdkStorageStore["clientIds"])) => void;
|
|
43
|
+
declare const createSqliteDriver: (options?: SqliteDriverOptions) => StorageDriver;
|
|
44
|
+
declare function createBunSqliteDriver(dbPath: string): Promise<StorageDriver>;
|
|
45
|
+
|
|
46
|
+
interface IndexedDBDriverOptions {
|
|
47
|
+
dbName?: string;
|
|
48
|
+
storeName?: string;
|
|
171
49
|
}
|
|
172
|
-
|
|
173
|
-
type SdkStore = StoreApi<SdkStorageStore>;
|
|
174
|
-
declare const createSdkStore: ({ driver, }: SdkStoreOptions) => {
|
|
175
|
-
store: SdkStore;
|
|
176
|
-
hydrate: Promise<void>;
|
|
177
|
-
};
|
|
178
|
-
declare const createDiscoveryAdapterFromStore: (store: SdkStore) => DiscoveryAdapter;
|
|
179
|
-
declare const createStorageAdapterFromStore: (store: SdkStore) => StorageAdapter;
|
|
180
|
-
declare const createProviderRegistryFromStore: (store: SdkStore) => ProviderRegistry;
|
|
50
|
+
declare const createIndexedDBDriver: (options?: IndexedDBDriverOptions) => StorageDriver;
|
|
181
51
|
|
|
182
52
|
declare const SDK_STORAGE_KEYS: {
|
|
183
53
|
readonly MODELS_FROM_ALL_PROVIDERS: "modelsFromAllProviders";
|
|
@@ -188,21 +58,28 @@ declare const SDK_STORAGE_KEYS: {
|
|
|
188
58
|
readonly INFO_FROM_ALL_PROVIDERS: "info_from_all_providers";
|
|
189
59
|
readonly LAST_MODELS_UPDATE: "lastModelsUpdate";
|
|
190
60
|
readonly LAST_BASE_URLS_UPDATE: "lastBaseUrlsUpdate";
|
|
191
|
-
readonly LOCAL_CASHU_TOKENS: "local_cashu_tokens";
|
|
192
61
|
readonly API_KEYS: "api_keys";
|
|
193
62
|
readonly CHILD_KEYS: "child_keys";
|
|
63
|
+
readonly XCASHU_TOKENS: "xcashu_tokens";
|
|
194
64
|
readonly ROUTSTR21_MODELS: "routstr21Models";
|
|
195
65
|
readonly LAST_ROUTSTR21_MODELS_UPDATE: "lastRoutstr21ModelsUpdate";
|
|
196
66
|
readonly CACHED_RECEIVE_TOKENS: "cached_receive_tokens";
|
|
197
67
|
readonly USAGE_TRACKING: "usage_tracking";
|
|
198
68
|
readonly CLIENT_IDS: "client_ids";
|
|
69
|
+
readonly FAILED_PROVIDERS: "failed_providers";
|
|
70
|
+
readonly LAST_FAILED: "last_failed";
|
|
71
|
+
readonly PROVIDERS_ON_COOLDOWN: "providers_on_cooldown";
|
|
199
72
|
};
|
|
200
73
|
|
|
201
74
|
declare const getDefaultSdkDriver: () => StorageDriver;
|
|
202
75
|
declare const getDefaultSdkStore: () => Promise<SdkStore>;
|
|
203
76
|
declare const getDefaultUsageTrackingDriver: () => UsageTrackingDriver;
|
|
77
|
+
/**
|
|
78
|
+
* Allow setting a custom usage tracking driver (useful for routstrd to use proper DB path)
|
|
79
|
+
*/
|
|
80
|
+
declare const setDefaultUsageTrackingDriver: (driver: UsageTrackingDriver) => void;
|
|
204
81
|
declare const getDefaultDiscoveryAdapter: () => Promise<DiscoveryAdapter>;
|
|
205
82
|
declare const getDefaultStorageAdapter: () => Promise<StorageAdapter>;
|
|
206
83
|
declare const getDefaultProviderRegistry: () => Promise<ProviderRegistry>;
|
|
207
84
|
|
|
208
|
-
export { DiscoveryAdapter,
|
|
85
|
+
export { DiscoveryAdapter, ProviderRegistry, SDK_STORAGE_KEYS, SdkStore, StorageAdapter, StorageDriver, UsageTrackingDriver, UsageTrackingEntry, createBunSqliteDriver, createBunSqliteUsageTrackingDriver, createIndexedDBDriver, createIndexedDBUsageTrackingDriver, createMemoryDriver, createMemoryUsageTrackingDriver, createSqliteDriver, createSqliteUsageTrackingDriver, getDefaultDiscoveryAdapter, getDefaultProviderRegistry, getDefaultSdkDriver, getDefaultSdkStore, getDefaultStorageAdapter, getDefaultUsageTrackingDriver, localStorageDriver, setDefaultUsageTrackingDriver };
|