UNPKG

koishi-plugin-emojiluna

Version:

Smart emoji management plugin with AI categorization

124 lines (123 loc) 4.08 kB
import { Schema } from 'koishi'; import { ImageContentType } from './types'; export declare const Config: Schema<Schemastery.ObjectS<{ maxEmojiCount: Schema<number, number>; selfUrl: Schema<string, string>; storagePath: Schema<string, string>; categories: Schema<string[], string[]>; autoCategorize: Schema<boolean, boolean>; autoAnalyze: Schema<boolean, boolean>; autoCollect: Schema<boolean, boolean>; triggerWithName: Schema<boolean, boolean>; }> | Schemastery.ObjectS<{ model: Schema<any, any>; }> | Schemastery.ObjectS<{ categorizePrompt: Schema<string, string>; analyzePrompt: Schema<string, string>; imageFilterPrompt: Schema<string, string>; injectVariablesPrompt: Schema<string, string>; }> | Schemastery.ObjectS<{ injectVariables: Schema<boolean, boolean>; injectVariablesLimit: Schema<number, number>; backendServer: Schema<boolean, boolean>; backendPath: Schema<string, string>; uploadToken: Schema<string, string>; }> | Schemastery.ObjectS<{ batchSize: Schema<number, number>; aiConcurrency: Schema<number, number>; AIBatchDelay: Schema<number, number>; AIMaxAttempts: Schema<number, number>; AIBackoffBase: Schema<number, number>; }> | Schemastery.ObjectS<{ minEmojiSize: Schema<number, number>; maxEmojiSize: Schema<number, number>; similarityThreshold: Schema<number, number>; whitelistGroups: Schema<string[], string[]>; emojiFrequencyThreshold: Schema<number, number>; groupAutoCollectLimit: Schema<import("cosmokit").Dict<Schemastery.ObjectS<{ hourLimit: Schema<number, number>; dayLimit: Schema<number, number>; }>, string>, import("cosmokit").Dict<Schemastery.ObjectT<{ hourLimit: Schema<number, number>; dayLimit: Schema<number, number>; }>, string>>; enableImageTypeFilter: Schema<boolean, boolean>; acceptedImageTypes: Schema<ImageContentType[], ImageContentType[]>; }>, { maxEmojiCount: number; selfUrl: string; storagePath: string; categories: string[]; autoCategorize: boolean; autoAnalyze: boolean; autoCollect: boolean; triggerWithName: boolean; } & import("cosmokit").Dict & { model: any; } & { categorizePrompt: string; analyzePrompt: string; imageFilterPrompt: string; injectVariablesPrompt: string; } & { injectVariables: boolean; injectVariablesLimit: number; backendServer: boolean; backendPath: string; uploadToken: string; } & { batchSize: number; aiConcurrency: number; AIBatchDelay: number; AIMaxAttempts: number; AIBackoffBase: number; } & { minEmojiSize: number; maxEmojiSize: number; similarityThreshold: number; whitelistGroups: string[]; emojiFrequencyThreshold: number; groupAutoCollectLimit: import("cosmokit").Dict<Schemastery.ObjectT<{ hourLimit: Schema<number, number>; dayLimit: Schema<number, number>; }>, string>; enableImageTypeFilter: boolean; acceptedImageTypes: ImageContentType[]; }>; export interface Config { maxEmojiCount: number; storagePath: string; categories: string[]; autoCategorize: boolean; triggerWithName: boolean; autoAnalyze: boolean; autoCollect: boolean; model: string; selfUrl: string; categorizePrompt: string; analyzePrompt: string; imageFilterPrompt: string; injectVariablesPrompt: string; minEmojiSize: number; maxEmojiSize: number; similarityThreshold: number; whitelistGroups: string[]; emojiFrequencyThreshold: number; injectVariables: boolean; injectVariablesLimit: number; backendServer: boolean; backendPath: string; uploadToken: string; groupAutoCollectLimit: Record<string, { hourLimit: number; dayLimit: number; }>; enableImageTypeFilter: boolean; acceptedImageTypes: ImageContentType[]; batchSize: number; aiConcurrency: number; AIBatchDelay: number; AIMaxAttempts: number; AIBackoffBase: number; } export declare const name = "emojiluna";