import { Context, Schema } from 'koishi'; export declare const name = "minecraft-notifier"; export declare const inject: string[]; export interface LatestVersion { id: number; lastRelease: string; lastSnapshot: string; } export interface ArticleLatestVersion { id: number; lastRelease: string; lastSnapshot: string; releaseTryTime: number; snapshotTryTime: number; latestVersion: string; } export interface ArticleRecord { id: number; version: string; isSnapshot: boolean; articleUrl: string; articleContent: string; } declare module 'koishi' { interface Tables { minecraft_notifier: LatestVersion; minecraft_article_version: ArticleLatestVersion; minecraft_article_record: ArticleRecord; } } export interface Config { checkInterval: number; baseApiUrl: string; aiProvider: 'openai' | 'openai-compatible'; model: string; models: string[]; temperature: number; maxOutputTokens: number; timeoutMs: number; maxRetries: number; enableWebSearch: boolean; continueAiSummaryOnSourceFetchFailure: boolean; apiKey: string; notifyChannel: string[]; translationSource: 'sheet' | 'sheet-github-api' | 'wiki'; githubTranslationApiUrl: string; githubTranslationApiToken?: string; gitcodeApiToken?: string; gitcodeOwner?: string; gitcodeRepo?: string; } export declare const Config: Schema; export declare function apply(ctx: Context, cfg: Config): void;