import { Context, Schema } from "koishi";
export declare const inject: {
    required: string[];
    optional: string[];
};
export declare const name = "card-21-game";
export declare const usage = "## \u4F7F\u7528\n\n1. \u542F\u52A8 `monetary` \u548C `database` \u670D\u52A1\u3002\n2. \u8BBE\u7F6E\u6307\u4EE4\u522B\u540D\u3002\n3. \u6295\u6CE8\uFF1A`blackjack.\u52A0\u5165\u6E38\u620F [\u6295\u6CE8]`\u3002\n4. \u5F00\u59CB\uFF1A\n   - \u6709\u5E84\u5BB6\u6A21\u5F0F\uFF1A`blackjack.\u5F00\u59CB\u6E38\u620F`\u3002\n   - \u65E0\u5E84\u5BB6\u6A21\u5F0F\uFF1A`blackjack.\u5F00\u59CB\u6E38\u620F -n`\u3002\n\n- \u7B79\u7801\u4E3A\u901A\u7528\u8D27\u5E01\uFF0C\u901A\u8FC7\u5176\u4ED6\u63D2\u4EF6\uFF08\u7B7E\u5230\u3001\u9493\u9C7C\u3001\u8D5B\u9A6C\u7B49\uFF09\u83B7\u5F97\u3002\n- \u6587\u672C\u8F6C\u56FE\u7247\uFF1A\u63A8\u8350 `imagify` \u63D2\u4EF6\uFF0C\u89C6\u89C9\u6548\u679C\u66F4\u4F73\u3002\n\n## \u89C4\u5219\n\n- \u65E0\u5E84\u5BB6\u6A21\u5F0F\uFF1A\u73A9\u5BB6\u4E4B\u95F4\u8FDB\u884C\u6E38\u620F\u3002\n- \u6709\u5E84\u5BB6\u6A21\u5F0F\uFF1A\u5E84\u5BB6\u4E0E\u73A9\u5BB6\u5BF9\u6218\uFF0C\u5E84\u5BB6\u4E3A\u673A\u5668\u4EBA\u3002\n- \u6E38\u620F\u76EE\u6807\uFF1A\u4F7F\u624B\u724C\u70B9\u6570\u5C3D\u91CF\u63A5\u8FD1 21 \u70B9\uFF0C\u4F46\u4E0D\u8D85\u8FC7 21 \u70B9\u3002\n\n## \u672F\u8BED\n\n- \u6295\u964D\uFF1A\u73A9\u5BB6\u672A\u8981\u724C\u524D\u53EF\u6295\u964D\uFF0C\u8FD4\u8FD8\u534A\u6CE8\u3002\n- \u9ED1\u6770\u514B\uFF1A\u624B\u724C\u70B9\u6570 21 \u70B9\uFF0C\u4E14\u53EA\u6709\u4E24\u5F20\u624B\u724C\u3002\u8D54\u7387\u4E3A 1.5\u3002\n- \u52A0\u500D\uFF1A\u73A9\u5BB6\u6301\u4E24\u5F20\u624B\u724C\u4E14\u70B9\u6570\u4E3A 11 \u65F6\uFF0C\u53EF\u52A0\u500D\u6295\u6CE8\uFF0C\u53EA\u80FD\u518D\u8981\u4E00\u5F20\u724C\u3002\n- \u4FDD\u9669\uFF1A\u5E84\u5BB6\u7684\u7B2C\u4E00\u5F20\u724C\u662F A \u65F6\uFF0C\u73A9\u5BB6\u53EF\u5C06\u7B79\u7801\u5206\u534A\uFF0C\u8D2D\u4E70\u4FDD\u9669\u3002\u5E84\u5BB6\u624B\u724C 21 \u70B9\u65F6\uFF0C\u83B7\u53CC\u500D\u4FDD\u9669\u91D1\u3002\n- \u5206\u724C\uFF1A\u73A9\u5BB6\u624B\u724C\u4E3A\u5BF9\u5B50\u65F6\uFF0C\u53EF\u5206\u4E24\u526F\u624B\u724C\uFF0C\u5206\u522B\u8FDB\u884C\u64CD\u4F5C\uFF0C\u82E5\u5206\u51FA\u7684\u662F A\uFF0C\u53EA\u80FD\u518D\u8981\u4E00\u5F20\u724C\u3002\n\n## QQ \u7FA4\n\n- 956758505";
export interface Config {
    allowZeroBetJoin: boolean;
    retractDelay: number;
    imageType: "png" | "jpeg" | "webp";
    isTextToImageConversionEnabled: boolean;
    enableCardBetting: boolean;
    enableSurrender: boolean;
    defaultMaxLeaderboardEntries: number;
    dealerSpeed: number;
    betMaxDuration: number;
    buyInsuranceMaxDuration: number;
    surrenderMaxDuration: number;
    joinGameProcedureWaitTimeInSeconds: number;
    numberOfDecks: number;
    transferFeeRate: number;
    isEnableQQOfficialRobotMarkdownTemplate: boolean;
    customTemplateId: string;
    key: string;
    numberOfMessageButtonsPerRow: number;
    isBellaPluginPointsEnabledForCurrency: boolean;
    minimumRequiredCurrencyForGameEntry: number;
}
export declare const Config: Schema<Config>;
declare module "koishi" {
    interface Tables {
        blackjack_game_record: BlackJackGameRecord;
        blackjack_playing_record: BlackJackPlayingRecord;
        blackjack_player_record: BlackJackPlayerRecord;
        monetary: Monetary;
        bella_sign_in: BellaSignIn;
    }
}
interface Monetary {
    uid: number;
    currency: string;
    value: number;
}
export interface BellaSignIn {
    id: string;
    time: string;
    point: number;
    count: number;
    current_point: number;
    working: boolean;
    stime: number;
    wpoint: number;
    wktimecard: number;
    wktimespeed: boolean;
}
export interface BlackJackGameRecord {
    id: number;
    channelId: string;
    deck: string[];
    bankerHand: string[];
    currentPlayerIndex: number;
    currentPlayerUserId: string;
    currentPlayerUserName: string;
    currentPlayerHandIndex: number;
    gameStatus: string;
    canSurrender: boolean;
    canBuyInsurance: boolean;
    isNoDealerMode: boolean;
}
export interface BlackJackPlayingRecord {
    id: number;
    channelId: string;
    userId: string;
    username: string;
    bet: number;
    playerHand: string[];
    playerHandIndex: number;
    playerIndex: number;
    betPlayerUserId: string;
    betPlayerUserName: string;
    betType: string;
    betAmount: number;
    isBuyInsurance: boolean;
    insurance: number;
    isSurrender: boolean;
    isOver: boolean;
    win: number;
    betWin: number;
    afterDoublingTheBet: string;
}
export interface BlackJackPlayerRecord {
    id: number;
    userId: string;
    username: string;
    win: number;
    lose: number;
    moneyChange: number;
    numberOf21: number;
    numberOfBlackJack: number;
    draw: number;
}
export declare function apply(ctx: Context, config: Config): void;
export {};
