import { Context, Schema } from 'koishi';
export declare const name = "yutang-levelup";
export declare const inject: {
    required: string[];
    optional: string[];
};
export declare const usage = "# \uD83D\uDC90\u2B50\uFE0F\u7FA4\u804A\u7B49\u7EA7\u63D2\u4EF6\u2B50\uFE0F\uD83D\uDC90\n### \u5FC5\u987B\u4F9D\u8D56 koishi-plugin-message-counter \u63D2\u4EF6\uFF0C\u6B64\u63D2\u4EF6\u624D\u80FD\u6B63\u5E38\u4F7F\u7528\n## \u53CD\u9988\n- \u5982\u679C\u4F60\u6709\u4EFB\u4F55\u95EE\u9898\u6216\u5EFA\u8BAE\uFF0C\u8BF7\u8054\u7CFB\u53D1\u53CD\u9988QQ\u7FA4\uFF1A738988912\n- \u94FE\u63A5\u8DF3\u8F6C\u3010\u7FBD\u68E0\u5A31\u4E50&\u53CD\u9988\u7FA4\u3011\uFF1Ahttps://qm.qq.com/q/h4KbK4N6a4\n\n";
export interface Config {
    rankingDisplayCount: number;
}
export declare const Config: Schema<Config>;
declare module 'koishi' {
    interface Tables {
        levelup: {
            id: number;
            uid: number;
            userId: string;
            createdAt: Date;
            updatedAt: Date;
            level: number;
            totalPostCount: number;
            username: string;
            channelName: string;
            channelId: string;
        };
        message_counter_records: {
            id: number;
            channelId: string;
            channelName: string;
            userId: string;
            username: string;
            userAvatar: string;
            todayPostCount: number;
            thisWeekPostCount: number;
            thisMonthPostCount: number;
            thisYearPostCount: number;
            totalPostCount: number;
            yesterdayPostCount: number;
            timestamp: Date;
        };
    }
}
export declare class SigninDatabase {
    ensureDirExists(filePath: string): Promise<void>;
}
export declare function apply(ctx: Context, config: Config): void;
