import { Context, Schema } from 'koishi';
import type Puppeteer from 'koishi-plugin-puppeteer';
export declare const name = "checkin-custom";
export declare const inject: {
    required: string[];
};
export interface CheckinCommandConfig {
    commandName: string;
    successMessage: string;
    alreadyCheckedMessage: string;
    checkinTitle: string;
    backgroundImage: string;
    backgroundSize: 'cover' | 'contain';
    backgroundBlur: number;
    themeColor: string;
}
export interface RankCommandConfig {
    commandName: string;
    title: string;
    includedTypes: string[];
}
export interface Config {
    checkinCommands: CheckinCommandConfig[];
    rankCommands: RankCommandConfig[];
    debug: boolean;
}
export declare const Config: Schema<Config>;
declare module 'koishi' {
    interface Context {
        puppeteer: Puppeteer;
    }
    interface Tables {
        'checkin-custom-record': CheckinRecord;
    }
}
export interface CheckinRecord {
    id: number;
    userId: string;
    platform: string;
    checkinType: string;
    date: Date;
}
export declare function apply(ctx: Context, config: Config): void;
