@promptbook/wizard
Version:
Promptbook: Create persistent AI agents that turn your company's scattered knowledge into action
47 lines (46 loc) • 1.65 kB
TypeScript
import type { string_name } from '../../../../types/string_name';
import type { Registered } from '../../../../utils/misc/$Register';
import type { LlmToolsMetadata } from '../LlmToolsMetadata';
/**
* Environment variables available for provider resolution.
*
* @private type of `$registeredLlmToolsMessage`
*/
export type AvailableEnvironmentVariables = Record<string_name, string>;
/**
* Mixed provider entry assembled from both provider registers.
*
* @private type of `$registeredLlmToolsMessage`
*/
export type RegisteredLlmToolEntry = Registered & Partial<Pick<LlmToolsMetadata, 'title' | 'envVariables'>>;
/**
* Provider entry enriched with runtime availability and configuration flags.
*
* @private type of `$registeredLlmToolsMessage`
*/
export type RegisteredLlmToolStatus = RegisteredLlmToolEntry & {
readonly isMetadataAvailable: boolean;
readonly isInstalled: boolean;
readonly isFullyConfigured: boolean;
readonly isPartiallyConfigured: boolean;
};
/**
* Provider register snapshots used to build the summary.
*
* @private type of `$registeredLlmToolsMessage`
*/
export type RegisteredLlmToolRegisters = {
readonly registeredMetadata: ReadonlyArray<LlmToolsMetadata>;
readonly registeredTools: ReadonlyArray<Registered>;
};
/**
* Message-rendering context for the registered providers summary.
*
* @private type of `$registeredLlmToolsMessage`
*/
export type RegisteredLlmToolsMessageContext = {
readonly env: AvailableEnvironmentVariables;
readonly llmToolStatuses: ReadonlyArray<RegisteredLlmToolStatus>;
readonly usedEnvMessage: string;
readonly isRunningInNode: boolean;
};