import { i as NodmixConfig } from "./types.nodmix-B9QJSty6.js";
import { f as ModelProviderConfig } from "./types.models-B7DJ1cTJ.js";
import { i as WizardPrompter } from "./prompts-DgKIGa-v.js";
import { C as NodmixPluginApi, Rt as ProviderCatalogContext, Tt as ProviderAuthContext, Vc as ProviderRuntimeModel, Wt as ProviderDiscoveryContext, hn as ProviderPrepareDynamicModelContext, jt as ProviderAuthResult, kt as ProviderAuthMethodNonInteractiveContext } from "./types-CLo6hM78.js";
import { LMSTUDIO_DEFAULT_API_KEY_ENV_VAR, LMSTUDIO_DEFAULT_BASE_URL, LMSTUDIO_DEFAULT_EMBEDDING_MODEL, LMSTUDIO_DEFAULT_INFERENCE_BASE_URL, LMSTUDIO_DEFAULT_LOAD_CONTEXT_LENGTH, LMSTUDIO_DEFAULT_MODEL_ID, LMSTUDIO_LOCAL_API_KEY_PLACEHOLDER, LMSTUDIO_MODEL_PLACEHOLDER, LMSTUDIO_PROVIDER_ID, LMSTUDIO_PROVIDER_LABEL, LmstudioModelBase, LmstudioModelWire, buildLmstudioAuthHeaders, discoverLmstudioModels, ensureLmstudioModelLoaded, fetchLmstudioModels, mapLmstudioWireEntry, normalizeLmstudioProviderConfig, resolveLmstudioConfiguredApiKey, resolveLmstudioInferenceBase, resolveLmstudioProviderHeaders, resolveLmstudioReasoningCapability, resolveLmstudioRuntimeApiKey, resolveLmstudioServerBase, resolveLoadedContextWindow } from "./lmstudio-runtime.js";

//#region src/plugin-sdk/lmstudio.d.ts
type LmstudioInteractiveParams = {
  config: NodmixConfig;
  prompter?: WizardPrompter;
  secretInputMode?: unknown;
  allowSecretRefPrompt?: boolean;
  promptText?: (params: {
    message: string;
    initialValue?: string;
    placeholder?: string;
    validate?: (value: string | undefined) => string | undefined;
  }) => Promise<string | undefined>;
  note?: (message: string, title?: string) => Promise<void> | void;
};
type FacadeModule = {
  promptAndConfigureLmstudioInteractive: (params: LmstudioInteractiveParams) => Promise<ProviderAuthResult>;
  configureLmstudioNonInteractive: (ctx: ProviderAuthMethodNonInteractiveContext) => Promise<NodmixConfig | null>;
  discoverLmstudioProvider: (ctx: ProviderCatalogContext) => Promise<{
    provider: ModelProviderConfig;
  } | null>;
  prepareLmstudioDynamicModels: (ctx: ProviderPrepareDynamicModelContext) => Promise<ProviderRuntimeModel[]>;
};
declare const promptAndConfigureLmstudioInteractive: FacadeModule["promptAndConfigureLmstudioInteractive"];
declare const configureLmstudioNonInteractive: FacadeModule["configureLmstudioNonInteractive"];
declare const discoverLmstudioProvider: FacadeModule["discoverLmstudioProvider"];
declare const prepareLmstudioDynamicModels: FacadeModule["prepareLmstudioDynamicModels"];
//#endregion
export { LMSTUDIO_DEFAULT_API_KEY_ENV_VAR, LMSTUDIO_DEFAULT_BASE_URL, LMSTUDIO_DEFAULT_EMBEDDING_MODEL, LMSTUDIO_DEFAULT_INFERENCE_BASE_URL, LMSTUDIO_DEFAULT_LOAD_CONTEXT_LENGTH, LMSTUDIO_DEFAULT_MODEL_ID, LMSTUDIO_LOCAL_API_KEY_PLACEHOLDER, LMSTUDIO_MODEL_PLACEHOLDER, LMSTUDIO_PROVIDER_ID, LMSTUDIO_PROVIDER_LABEL, type LmstudioModelBase, type LmstudioModelWire, type NodmixPluginApi, type ProviderAuthContext, type ProviderAuthMethodNonInteractiveContext, type ProviderAuthResult, type ProviderCatalogContext, type ProviderDiscoveryContext, type ProviderPrepareDynamicModelContext, type ProviderRuntimeModel, buildLmstudioAuthHeaders, configureLmstudioNonInteractive, discoverLmstudioModels, discoverLmstudioProvider, ensureLmstudioModelLoaded, fetchLmstudioModels, mapLmstudioWireEntry, normalizeLmstudioProviderConfig, prepareLmstudioDynamicModels, promptAndConfigureLmstudioInteractive, resolveLmstudioConfiguredApiKey, resolveLmstudioInferenceBase, resolveLmstudioProviderHeaders, resolveLmstudioReasoningCapability, resolveLmstudioRuntimeApiKey, resolveLmstudioServerBase, resolveLoadedContextWindow };