import * as plugins from './plugins.js'; import * as aiDocsClasses from './aidocs_classes/index.js'; export type TAiDocAuthMode = plugins.tsagent.TTsAgentAuthMode; export interface IAiDocConfig extends plugins.tsagent.ITsAgentConfig { } export interface IAiDocResolvedConfig extends plugins.tsagent.ITsAgentResolvedConfig { } export declare const defaultAiDocConfig: IAiDocResolvedConfig; type TAiDocRunAgentOptions = Parameters[0]; type TAiDocRunAgentResult = Awaited>; export declare class AiDoc { private tsAgent?; private openaiToken; smartconfigKV?: plugins.smartconfig.KeyValueStore<{ OPENAI_TOKEN: string; }>; qenvInstance?: plugins.qenv.Qenv; model: plugins.tsagent.TsAgent['model']; providerOptions?: IAiDocResolvedConfig['providerOptions']; config: IAiDocResolvedConfig; selectedAuthSource: string; argvArg: any; constructor(argvArg?: any); private get activeTsAgent(); private migrateKeyValueStore; private resolveTsdocEnvConfig; start(): Promise; stop(): Promise; getOpenaiToken(): string; runAgent(options: TAiDocRunAgentOptions): Promise; buildReadme(projectDirArg: string): Promise; buildDescription(projectDirArg: string): Promise; buildNextCommitObject(projectDirArg: string): Promise; getProjectContext(projectDirArg: string): Promise<{ smartfilePackageJSON: plugins.smartfile.SmartFile; smartfilesReadme: plugins.smartfile.SmartFile; smartfilesReadmeHints: plugins.smartfile.SmartFile; smartfilesSmartconfigJSON: plugins.smartfile.SmartFile; smartfilesMod: plugins.smartfile.SmartFile[]; smartfilesTest: plugins.smartfile.SmartFile[]; }>; /** * Get the context with token count information * @param projectDirArg The path to the project directory * @returns An object containing the context string and its token count */ getProjectContextWithTokenCount(projectDirArg: string): Promise<{ context: string; tokenCount: number; }>; /** * Get just the token count for a project's context * @param projectDirArg The path to the project directory * @returns The number of tokens in the project context */ getProjectContextTokenCount(projectDirArg: string): Promise; /** * Estimate token count in a text string * @param text The text to estimate tokens for * @returns Estimated number of tokens */ countTokens(text: string): number; } export {};