src / config / IConfigurationSource.ts
/**
* Contract for individual configuration sources (e.g. LM Studio Plugin UI Settings, process.env, JSON files).
*/
export interface IConfigurationSource {
getWebDefaultProvider(): string | undefined;
getWebProviderPriority(): string[] | undefined;
getProviderKeys(providerName: string, category?: string): string[] | undefined;
getImageDefaultProvider(): string | undefined;
getImageProviderPriority(): string[] | undefined;
getHttpTimeoutSeconds(): number | undefined;
getQuotaCooldownHours(): number | undefined;
getSearchMaxSnippetLength?(): number | undefined;
getSearchMaxPayloadCharacters?(): number | undefined;
getPrependTimeContext?(): boolean | undefined;
getPrependSearchImagesContext?(): boolean | undefined;
getPrependVisionContext?(): boolean | undefined;
getMaxImageResults?(): number | undefined;
getMaxWebResults?(): number | undefined;
getReadWebpageChunkSize?(): number | undefined;
}
src / config / IConfigurationSource.ts
/**
* Contract for individual configuration sources (e.g. LM Studio Plugin UI Settings, process.env, JSON files).
*/
export interface IConfigurationSource {
getWebDefaultProvider(): string | undefined;
getWebProviderPriority(): string[] | undefined;
getProviderKeys(providerName: string, category?: string): string[] | undefined;
getImageDefaultProvider(): string | undefined;
getImageProviderPriority(): string[] | undefined;
getHttpTimeoutSeconds(): number | undefined;
getQuotaCooldownHours(): number | undefined;
getSearchMaxSnippetLength?(): number | undefined;
getSearchMaxPayloadCharacters?(): number | undefined;
getPrependTimeContext?(): boolean | undefined;
getPrependSearchImagesContext?(): boolean | undefined;
getPrependVisionContext?(): boolean | undefined;
getMaxImageResults?(): number | undefined;
getMaxWebResults?(): number | undefined;
getReadWebpageChunkSize?(): number | undefined;
}