import { DicePip, DiceRoll } from '../Dices';
/**
 * ダイスをロールして、その目を提供するインターフェース
 */
export declare type DiceSource = {
    /**
     * ダイス二つをまとめて振る
     *
     * @param tag 統計用（未実装）
     */
    roll(tag?: string): DiceRoll;
    /**
     * ダイス二つをまとめて振る。ただし、ゾロ目が出たらやり直す。
     *
     * あまりにゾロ目が続く場合は、例外が発生する
     *
     * @param tag 統計用（未実装）
     */
    openingRoll(tag?: string): DiceRoll;
};
export declare const randomDiceSource: DiceSource;
/**
 * 指定された配列が尽きるまでは、その内容がロール結果として返る
 * 尽きた後は、randomDiceSourceと同じ動作をする
 * @param pips ロール結果として返したい目の配列
 */
export declare function presetDiceSource(...pips: DicePip[]): DiceSource;
export declare function rollMathRandom(): DicePip;
//# sourceMappingURL=DiceSource.d.ts.map