@mars-sea/dsh-commandcode-provider 0.10.0 → 0.10.2

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/lib/index.d.ts CHANGED
@@ -7,12 +7,14 @@ import { Context } from "@deepseek-ai/cordis";
7
7
  import { AttachmentStore } from "@deepseek-ai/dsh-attachment";
8
8
  import { CommandDefinition } from "@deepseek-ai/dsh-commands";
9
9
  //#region src/adapter.d.ts
10
- declare const COMMAND_CODE_CLI_VERSION = "1.47.0";
10
+ declare const COMMAND_CODE_CLI_VERSION = "1.50.0";
11
11
  declare const DEFAULT_API_BASE = "https://api.commandcode.ai";
12
12
  declare const DEFAULT_GENERATE_MAX_TOKENS = 64000;
13
13
  declare const DEFAULT_MAX_OUTPUT_TOKENS = 65536;
14
14
  /** How long the picker's plan-filter billing facts stay cached before refetching. */
15
15
  declare const BILLING_ACCESS_TTL_MS: number;
16
+ /** Endpoint protocol selected for one generate call. */
17
+ type CommandCodeProtocol = 'cli' | 'openai';
16
18
  /** Head-of-request timeout: how long to wait for the first response byte. */
17
19
  declare const DEFAULT_REQUEST_TIMEOUT_MS = 60000;
18
20
  /** Stream idle timeout: a generation that stalls this long is a dead connection. */
@@ -22,7 +24,7 @@ declare function projectSlugFromPath(pathName: string): string;
22
24
  declare function resolveAuthFileApiKey(): string | undefined;
23
25
  /** Connection facts resolved fresh per request by the plugin entry. */
24
26
  interface CommandCodeConnectionOptions {
25
- /** API base; the Provider API lives under it (`/alpha/generate`, `/provider/v1/models`). */
27
+ /** API base; the Provider API lives under it (`/alpha/generate`, `/provider/v1/chat/completions`, `/provider/v1/models`). */
26
28
  apiBase: string;
27
29
  /** Working directory reported to the API (project slug, config block). */
28
30
  workingDir: string;
@@ -43,6 +45,23 @@ interface CommandCodeConnectionOptions {
43
45
  * keep the full catalog visible. Set false to always list every model.
44
46
  */
45
47
  filterModelsByPlan?: boolean;
48
+ /**
49
+ * Visible-model allowlist: catalog model ids shown in pickers. Empty or
50
+ * unset means "show everything"; applies after the subscription-tier filter.
51
+ * The settings page persists it; the catalog endpoint serves the full
52
+ * catalog regardless so the page can always offer every model.
53
+ */
54
+ visibleModels?: string[] | undefined;
55
+ /**
56
+ * Optional protocol hint. `'auto'` (default) uses billing/cache plus
57
+ * Provider API fallback; `'cli'` forces `/alpha/generate`; `'openai'`
58
+ * prefers `/provider/v1/chat/completions` but still falls back to the CLI
59
+ * transport on `upgrade_required` (Go-plan keys have no Provider API
60
+ * access — failing outright would strand them). This is a
61
+ * connection-level test/operator seam and is intentionally not part of
62
+ * the plugin's user settings schema.
63
+ */
64
+ protocol?: 'auto' | CommandCodeProtocol;
46
65
  }
47
66
  /**
48
67
  * Resolve the durable attachment service, or undefined when the host does not
@@ -154,6 +173,7 @@ declare class CommandCodeAdapter<C extends CommandCodeConnectionOptions = Comman
154
173
  private readonly resolveAttachments;
155
174
  private readonly billingAccess;
156
175
  private readonly billingAccessInflight;
176
+ private readonly protocolCache;
157
177
  constructor(deps: CommandCodeAdapterDeps<C>);
158
178
  /**
159
179
  * Display metadata for the picker's provider group header. The base class
@@ -183,10 +203,20 @@ declare class CommandCodeAdapter<C extends CommandCodeConnectionOptions = Comman
183
203
  providerRetryPolicy(_provider: string): ResolvedRetryPolicy;
184
204
  /** Refresh the catalog (live fetch, cache fallback) and return it. */
185
205
  private loadCatalog;
186
- listModels(provider: string): Promise<readonly LlmModelInfo[]>;
206
+ listModels(provider: string, opts?: {
207
+ unfiltered?: boolean;
208
+ }): Promise<readonly LlmModelInfo[]>;
187
209
  resolveModel(provider: string, model: string, signal?: AbortSignal): Promise<LlmResolvedModelInfo>;
188
210
  /** The headers every authenticated account endpoint shares. */
189
211
  private accountHeaders;
212
+ /**
213
+ * Fetch one account endpoint and parse its JSON body. Returns the HTTP
214
+ * status alongside the parsed record so each caller applies its own
215
+ * failure accounting: the billing probe fails open silently, the usage
216
+ * report books failures per endpoint. Non-2xx and non-record bodies come
217
+ * back without a record; only a transport throw propagates to the caller.
218
+ */
219
+ private fetchEndpointJson;
190
220
  /**
191
221
  * The billing facts behind the picker's plan filter, cached for
192
222
  * {@link BILLING_ACCESS_TTL_MS} and shared across concurrent callers.
@@ -203,6 +233,18 @@ declare class CommandCodeAdapter<C extends CommandCodeConnectionOptions = Comman
203
233
  * to `undefined` (fail-open) rather than breaking the picker.
204
234
  */
205
235
  private fetchBillingAccess;
236
+ /** Fresh cached billing tier weight for a key, or undefined when not known. */
237
+ private cachedBillingTierWeight;
238
+ /** Cached protocol decision for a key, or undefined when expired/unknown. */
239
+ private cachedProtocolUseCli;
240
+ private rememberProtocol;
241
+ /**
242
+ * Choose the initial protocol for one request. A fresh protocol cache entry
243
+ * wins; otherwise a cached (not network-fetched) billing tier of Go is
244
+ * treated as CLI-only. Unknown accounts default to Provider API and fall
245
+ * back only after an `upgrade_required` rejection.
246
+ */
247
+ private resolveProtocol;
206
248
  /**
207
249
  * Fetch account, usage, credit, and subscription state from the Command
208
250
  * Code account endpoints (`/alpha/whoami`, `/alpha/usage/summary`,
@@ -445,7 +487,7 @@ declare const KNOWN_EFFORTS: Readonly<Record<string, readonly string[]>>;
445
487
  */
446
488
  declare const KNOWN_IMAGE_MODELS: ReadonlySet<string>;
447
489
  /**
448
- * Models the official CLI's model table (command-code@1.46.0) marks
490
+ * Models the official CLI's model table (command-code@1.50.0) marks
449
491
  * `reasoning:!0` but defines no selectable `reasoning_effort` levels — they
450
492
  * think automatically, with Command Code driving the depth. This is the
451
493
  * authoritative "thinks, effort not adjustable" set: `KNOWN_EFFORTS` (which
@@ -453,7 +495,7 @@ declare const KNOWN_IMAGE_MODELS: ReadonlySet<string>;
453
495
  * effort levels, and this snapshot is not surfaced in the picker's compact
454
496
  * description — it exists for programmatic consumers.
455
497
  *
456
- * Source: the command-code@1.46.0 bundled model table (dist/cli.mjs),
498
+ * Source: the command-code@1.50.0 bundled model table (dist/cli.mjs),
457
499
  * cross-checked with https://commandcode.ai/docs/reference/cli/models.
458
500
  * (`stealth/ox-alpha` left this set in command-code@1.32.1, which gave it
459
501
  * selectable `['low', 'high', 'max']` efforts; the preview then ended in
@@ -515,8 +557,8 @@ declare function compareByPlan(a: {
515
557
  }): number;
516
558
  /**
517
559
  * Subscription plan table, synced from the official CLI bundle's plan maps
518
- * (`Nn`/`$n` in command-code@1.31.0 `dist/cli.mjs`, re-verified unchanged
519
- * against 1.32.2 where they appear as `Zn`/`er`): subscription `planId`
560
+ * (located by the `"individual-go"` key in command-code@1.50.0 `dist/cli.mjs`,
561
+ * re-verified unchanged through 1.50.0): subscription `planId`
520
562
  * prefix → display name and the plan's monthly credit total. This is the
521
563
  * account's own subscription (from `/alpha/billing/subscriptions`) — distinct
522
564
  * from {@link KNOWN_PLANS}, which maps catalog models to their minimum tier.
@@ -560,8 +602,9 @@ interface CommandCodeBillingAccess {
560
602
  /**
561
603
  * Whether the picker lists `modelId` for an account with the given billing
562
604
  * access. Fails open at every uncertainty: no billing data, an unknown plan,
563
- * or a model outside {@link KNOWN_PLANS} all keep the model visible — the
564
- * server remains the final gate (`403 MODEL_NOT_IN_PLAN`).
605
+ * a non-finite weight (corrupt billing fact), or a model outside
606
+ * {@link KNOWN_PLANS} all keep the model visible — the server remains the
607
+ * final gate (`403 MODEL_NOT_IN_PLAN`).
565
608
  */
566
609
  declare function modelVisibleInPlan(modelId: string, access: CommandCodeBillingAccess | undefined): boolean;
567
610
  /**
@@ -640,8 +683,8 @@ declare function planLabel(modelId: string): string | undefined;
640
683
  declare function dealLabel(modelId: string, now?: number): string | undefined;
641
684
  /**
642
685
  * Compact human-readable context window, e.g. `1_000_000 -> "1M"`,
643
- * `256_000 -> "256K"`, `262_144 -> "256K"` (floor to the nearest K).
644
- * Returns undefined for unknown/absent sizes.
686
+ * `256_000 -> "256K"`, `262_144 -> "262K"` (floor to the nearest K).
687
+ * Returns undefined for unknown/absent sizes; values under 1K render raw.
645
688
  */
646
689
  declare function formatContext(contextWindow: number | undefined): string | undefined;
647
690
  /**
@@ -683,12 +726,20 @@ declare const USAGE_REPORT_ENDPOINT = "commandcode/report";
683
726
  * deliberately minimal so one `parse` function satisfies it.
684
727
  */
685
728
  declare const usageReportSchema: TypertSchema<CommandCodeAccountsReport>;
686
- /** One catalog entry the settings page's routing-rule editor offers. */
729
+ /** One catalog entry the settings page's model editors offer. */
687
730
  interface CommandCodeCatalogModel {
688
731
  /** Catalog model id (e.g. `deepseek/deepseek-v4-pro`). */
689
732
  id: string;
690
733
  /** Display name from the catalog. */
691
734
  name: string;
735
+ /**
736
+ * Minimum plan-tier key for this model (a `KNOWN_PLANS` value: `go`,
737
+ * `goat`, `pro`, `provider`, `max`), or undefined for models outside the
738
+ * snapshot. The settings page groups the model-editor dropdowns under
739
+ * tier headings from this — the browser cannot import the Host's
740
+ * capability snapshot, so the Host stamps it per entry.
741
+ */
742
+ tier?: string;
692
743
  }
693
744
  /** The model-catalog Remote result: the full catalog, sorted for picking. */
694
745
  interface CommandCodeCatalog {
@@ -790,8 +841,9 @@ declare const loginStatusSchema: TypertSchema<CommandCodeLoginStatus>;
790
841
  /**
791
842
  * The browser-login face the usage service exposes (`commandcode/login*`).
792
843
  * Backed by the Host-half {@link !CommandCodeLoginFlow} when the plugin entry
793
- * wired one; absent, the methods degrade to a no-op status so an old client
794
- * against a fresh page still answers instead of hanging.
844
+ * wired one; absent, `status`/`cancel` degrade to the idle status while
845
+ * `begin` rejects with a plain message (so the page's manual paste path
846
+ * stays the fallback instead of hanging).
795
847
  */
796
848
  interface LoginFlowFacade {
797
849
  /** Start (or rejoin) an attempt; rejects when it cannot start at all. */
@@ -812,9 +864,10 @@ interface CommandCodeUsageDeps<C extends CommandCodeConnectionOptions = CommandC
812
864
  */
813
865
  reports?: () => Promise<CommandCodeAccountsReport>;
814
866
  /**
815
- * Model-catalog source for the routing-rule editor (wired by the plugin
867
+ * Model-catalog source for the settings page's model editors (the
868
+ * routing-rule editor and the visible-models filter; wired by the plugin
816
869
  * entry). Absent, the `models` endpoint answers an empty list — the page's
817
- * rule editor degrades to the empty state.
870
+ * editors degrade to the empty state.
818
871
  */
819
872
  listModels?: () => Promise<CommandCodeCatalog>;
820
873
  /**
@@ -844,10 +897,11 @@ declare class CommandCodeUsageService<C extends CommandCodeConnectionOptions = C
844
897
  */
845
898
  report(): Promise<CommandCodeAccountsReport>;
846
899
  /**
847
- * The model catalog for the settings page's routing-rule editor. The
848
- * browser never calls the Command Code API directly — the Host serves the
849
- * catalog (already fetched/cached by the adapter) so rules can be picked
850
- * from the live model list instead of typed by hand.
900
+ * The full model catalog for the settings page's model editors (the
901
+ * routing-rule editor and the visible-models filter). The browser never
902
+ * calls the Command Code API directly — the Host serves the catalog
903
+ * (already fetched/cached by the adapter) so models can be picked from
904
+ * the live list instead of typed by hand.
851
905
  */
852
906
  models(): Promise<CommandCodeCatalog>;
853
907
  /**
@@ -990,17 +1044,68 @@ declare class CommandCodeLoginFlow {
990
1044
  declare const COMMANDCODE_SEARCH_PROVIDER_ID = "commandcode";
991
1045
  /**
992
1046
  * The factory-declared search provider id dsh ships by default (from
993
- * `dsh-base`'s cordis patch `web.config.searchProvider`). A plugin that wants
994
- * its own backend to win rewrites `WebRuntime.searchProviderId` to its own id;
995
- * disabling that plugin restores this value.
1047
+ * `dsh-base`'s cordis patch `web.config.searchProvider`). Kept as a
1048
+ * documented reference only: disabling this plugin's `webSearch` toggle
1049
+ * restores the previously selected backend (see
1050
+ * {@link applyCommandCodeSearchSelection}) — it never forces this default,
1051
+ * because forcing it is what used to silence sibling search plugins such as
1052
+ * modsearch even with Command Code search turned off (issue #26).
996
1053
  */
997
1054
  declare const DEFAULT_WEB_SEARCH_PROVIDER_ID = "deepseek-official";
998
1055
  /**
999
1056
  * Point the web seam's search selection at this plugin's provider (`commandcode`).
1000
1057
  * Sets the runtime field; the next search call honours it because `search()`
1001
1058
  * re-reads `searchProviderId` each time. Returns the prior id (or undefined).
1059
+ * Never throws: a hardened/frozen runtime shape must not break the
1060
+ * settings-save path that calls this — the provider simply stays
1061
+ * registered-but-unselected (the boot-time `searchProvider: commandcode`
1062
+ * cordis patch is the durable alternative).
1063
+ *
1064
+ * @deprecated Prefer {@link applyCommandCodeSearchSelection}: this overload
1065
+ * always overwrites the displaced backend with the factory default on
1066
+ * disable, so turning Command Code search off silences whichever provider
1067
+ * was selected before (e.g. modsearch) instead of restoring it (issue #26).
1002
1068
  */
1003
1069
  declare function selectCommandCodeSearchProvider(web: WebRuntime, enable: boolean): string | undefined;
1070
+ /**
1071
+ * Tracked web-search selection state for one mounted `WebRuntime`.
1072
+ *
1073
+ * `owner` marks whether this plugin currently owns the selection (i.e. it
1074
+ * wrote `commandcode` and has not given it back yet). `displaced` is the
1075
+ * backend id the plugin displaced when it took over — restored when the
1076
+ * toggle turns off or the plugin unloads. `undefined` means "nothing was
1077
+ * configured, leave auto-select" and must round-trip untouched: writing the
1078
+ * factory default instead would still override a sibling plugin's own
1079
+ * constructor-time pin.
1080
+ */
1081
+ interface CommandCodeSearchSelection {
1082
+ owner: boolean;
1083
+ displaced: string | undefined;
1084
+ }
1085
+ /** Fresh selection state: the plugin starts out not owning the selection. */
1086
+ declare function commandCodeSearchSelection(): CommandCodeSearchSelection;
1087
+ /**
1088
+ * Reach one end of the `webSearch` toggle without trampling sibling search
1089
+ * providers (issue #26).
1090
+ *
1091
+ * - Enabling writes `commandcode` and remembers whatever it displaced. When
1092
+ * the plugin already owns the selection (e.g. a settings save while still
1093
+ * on), the original `displaced` value is kept — the field currently holds
1094
+ * our own id, which must never be mistaken for the user's backend.
1095
+ * - Disabling hands the selection back to the remembered backend. When the
1096
+ * state holds no memory (a fresh boot straight into `webSearch: false`),
1097
+ * the field is left alone: the runtime's current value — a sibling's
1098
+ * cordis pin such as `searchProvider: modsearch`, or unset for
1099
+ * auto-select — already says what the user wants.
1100
+ * - When the field already reads `commandcode` at first touch (e.g. a
1101
+ * surviving runtime the plugin did not set, or a manual
1102
+ * `searchProvider: commandcode` pin), `displaced` stays undefined so the
1103
+ * later disable is a no-op rather than a guess at the factory default.
1104
+ *
1105
+ * Never throws: like the low-level rewrite, a hardened runtime shape degrades
1106
+ * to registered-but-unselected.
1107
+ */
1108
+ declare function applyCommandCodeSearchSelection(web: WebRuntime, state: CommandCodeSearchSelection, enable: boolean): void;
1004
1109
  /** Per-request facts the provider needs, all injected so the class stays cordis-free and testable. */
1005
1110
  interface CommandCodeSearchProviderDeps {
1006
1111
  /** Resolve one usable Command Code key (credential seam → env → auth file), or undefined when none. */
@@ -1021,7 +1126,7 @@ declare class CommandCodeSearchProvider implements WebSearchProvider {
1021
1126
  private readonly deps;
1022
1127
  readonly id = "commandcode";
1023
1128
  constructor(deps: CommandCodeSearchProviderDeps);
1024
- /** Cheap local check; must not make network calls. Presence of a key path + a parseable base is enough. */
1129
+ /** Cheap local check; must not make network calls. Presence of a parseable base is enough. */
1025
1130
  available(): boolean;
1026
1131
  search(request: WebSearchRequest, signal?: AbortSignal): Promise<WebSearchResult>;
1027
1132
  private resolveKey;
@@ -1063,6 +1168,12 @@ interface Config {
1063
1168
  * full catalog visible). Set false to always list every model.
1064
1169
  */
1065
1170
  filterModelsByPlan?: boolean;
1171
+ /**
1172
+ * Visible-model allowlist: catalog model ids shown in pickers. Empty or
1173
+ * unset means "show everything". Persisted by the settings page's model
1174
+ * filter card; applies after the subscription-tier filter.
1175
+ */
1176
+ visibleModels?: string[];
1066
1177
  /**
1067
1178
  * Extra accounts for multi-account rotation. The top-level
1068
1179
  * `apiKey`/`apiKeyEnv` (plus the CLI auth file) always form the first
@@ -1094,12 +1205,15 @@ interface Config {
1094
1205
  /**
1095
1206
  * Whether to use Command Code as the backend for dsh's model-facing
1096
1207
  * `web_search` tool. When enabled, the plugin registers a `commandcode`
1097
- * search provider on `ctx.web` AND rewrites the web seam's selected
1098
- * `searchProviderId` to `commandcode` (so it wins over the shipped
1099
- * `deepseek-official`), using the SAME Command Code API key/base as chat.
1100
- * The rewrite rides dsh's internal `searchProviderId`, which is read per
1101
- * search call, so a setting change lands on the next search without a
1102
- * restart. Defaults to true.
1208
+ * search provider on `ctx.web` AND selects `commandcode` in the web seam
1209
+ * (so it wins over the shipped `deepseek-official` or a sibling search
1210
+ * plugin's pin), using the SAME Command Code API key/base as chat. When
1211
+ * disabled, the selection is handed back to whichever backend was there
1212
+ * before — turning it off never forces the factory default, so a sibling
1213
+ * search plugin (e.g. modsearch) keeps working (issue #26). The rewrite
1214
+ * rides dsh's internal `searchProviderId`, which is read per search call,
1215
+ * so a setting change lands on the next search without a restart.
1216
+ * Defaults to true.
1103
1217
  */
1104
1218
  webSearch?: boolean;
1105
1219
  /**
@@ -1129,5 +1243,5 @@ interface ResolvedCommandCodeOptions extends CommandCodeConnectionOptions {
1129
1243
  declare function resolveAdapterOptions(config: Config): ResolvedCommandCodeOptions;
1130
1244
  declare function apply(ctx: Context, config: Config): void;
1131
1245
  //#endregion
1132
- export { type ApiKeyValidation, BILLING_ACCESS_TTL_MS, COMMANDCODE_SEARCH_PROVIDER_ID, COMMAND_CODE_CLI_VERSION, type CommandCodeAccountConfig, CommandCodeAccountPool, type CommandCodeAccountSlot, type CommandCodeAccountState, type CommandCodeAccountUsage, type CommandCodeAccountsReport, CommandCodeAdapter, type CommandCodeAdapterDeps, type CommandCodeBillingAccess, type CommandCodeCommandDeps, type CommandCodeConnectionOptions, type CommandCodeLoginCredentials, type CommandCodeLoginFailureReason, CommandCodeLoginFlow, type CommandCodeLoginFlowDeps, type CommandCodeLoginStatus, type CommandCodeModelAccountRule, CommandCodeSearchProvider, type CommandCodeSearchProviderDeps, type CommandCodeUsageDeps, type CommandCodeUsageReport, CommandCodeUsageService, Config, DEFAULT_API_BASE, DEFAULT_GENERATE_MAX_TOKENS, DEFAULT_MAX_OUTPUT_TOKENS, DEFAULT_MODELS_CACHE_PATH, DEFAULT_REQUEST_TIMEOUT_MS, DEFAULT_STREAM_IDLE_TIMEOUT_MS, DEFAULT_WEB_SEARCH_PROVIDER_ID, KNOWN_DEALS, KNOWN_EFFORTS, KNOWN_IMAGE_MODELS, KNOWN_PEAK_PRICING, KNOWN_PLANS, KNOWN_SUBSCRIPTION_PLANS, KNOWN_THINKING_MODELS, LOGIN_ALLOWED_ORIGINS, LOGIN_BEGIN_ENDPOINT, LOGIN_BODY_LIMIT_BYTES, LOGIN_CANCEL_ENDPOINT, LOGIN_MAX_PORT_ATTEMPTS, LOGIN_START_PORT, LOGIN_STATUS_ENDPOINT, LOGIN_TIMEOUT_MS, type LoginFlowFacade, PLAN_LABELS, PLAN_ORDER, PROVIDER, type ResolveAttachments, ResolvedCommandCodeOptions, USAGE_REPORT_ENDPOINT, accountUsable, apply, applyCommands, applyUsageRemote, buildCommandAuthUrl, capabilityDescription, commandDefinition, compareByPlan, dealLabel, formatContext, inject, loginStatusSchema, matchModelRule, modelVisibleInPlan, name, parseLoginStatus, peakPricingLabel, peakPricingState, planLabel, projectSlugFromPath, resolveAdapterOptions, resolveAuthFileApiKey, selectAccountForModel, selectActiveAccount, selectCommandCodeSearchProvider, studioBaseForApiBase, subscriptionPlanInfo, usageReportSchema, validateCommandApiKey };
1246
+ export { type ApiKeyValidation, BILLING_ACCESS_TTL_MS, COMMANDCODE_SEARCH_PROVIDER_ID, COMMAND_CODE_CLI_VERSION, type CommandCodeAccountConfig, CommandCodeAccountPool, type CommandCodeAccountSlot, type CommandCodeAccountState, type CommandCodeAccountUsage, type CommandCodeAccountsReport, CommandCodeAdapter, type CommandCodeAdapterDeps, type CommandCodeBillingAccess, type CommandCodeCommandDeps, type CommandCodeConnectionOptions, type CommandCodeLoginCredentials, type CommandCodeLoginFailureReason, CommandCodeLoginFlow, type CommandCodeLoginFlowDeps, type CommandCodeLoginStatus, type CommandCodeModelAccountRule, CommandCodeSearchProvider, type CommandCodeSearchProviderDeps, type CommandCodeSearchSelection, type CommandCodeUsageDeps, type CommandCodeUsageReport, CommandCodeUsageService, Config, DEFAULT_API_BASE, DEFAULT_GENERATE_MAX_TOKENS, DEFAULT_MAX_OUTPUT_TOKENS, DEFAULT_MODELS_CACHE_PATH, DEFAULT_REQUEST_TIMEOUT_MS, DEFAULT_STREAM_IDLE_TIMEOUT_MS, DEFAULT_WEB_SEARCH_PROVIDER_ID, KNOWN_DEALS, KNOWN_EFFORTS, KNOWN_IMAGE_MODELS, KNOWN_PEAK_PRICING, KNOWN_PLANS, KNOWN_SUBSCRIPTION_PLANS, KNOWN_THINKING_MODELS, LOGIN_ALLOWED_ORIGINS, LOGIN_BEGIN_ENDPOINT, LOGIN_BODY_LIMIT_BYTES, LOGIN_CANCEL_ENDPOINT, LOGIN_MAX_PORT_ATTEMPTS, LOGIN_START_PORT, LOGIN_STATUS_ENDPOINT, LOGIN_TIMEOUT_MS, type LoginFlowFacade, PLAN_LABELS, PLAN_ORDER, PROVIDER, type ResolveAttachments, ResolvedCommandCodeOptions, USAGE_REPORT_ENDPOINT, accountUsable, apply, applyCommandCodeSearchSelection, applyCommands, applyUsageRemote, buildCommandAuthUrl, capabilityDescription, commandCodeSearchSelection, commandDefinition, compareByPlan, dealLabel, formatContext, inject, loginStatusSchema, matchModelRule, modelVisibleInPlan, name, parseLoginStatus, peakPricingLabel, peakPricingState, planLabel, projectSlugFromPath, resolveAdapterOptions, resolveAuthFileApiKey, selectAccountForModel, selectActiveAccount, selectCommandCodeSearchProvider, studioBaseForApiBase, subscriptionPlanInfo, usageReportSchema, validateCommandApiKey };
1133
1247
  //# sourceMappingURL=index.d.ts.map