import { DicePluginConfig } from '../config';
import { Channel, User } from 'koishi';
import { DiceProfile } from './dice-profile';
export declare const DiceModule: () => <C extends import("koishi-thirdeye").PluginRegistrar.PluginClass<import("koishi").Context, Partial<DicePluginConfig>, any>>(plugin: C) => C & import("koishi-thirdeye").PluginRegistrar.PluginRegistrationOptions<import("koishi").Context, Partial<DicePluginConfig>>;
export declare function getProfileProperty<K extends keyof DiceProfile>(user: User, channel: Channel, property: K, defaultValue: DiceProfile[K]): DiceProfile[K];
export declare const getRcMode: (user: User, channel: Channel) => number;
export declare const getDefaultRollFaces: (user: User, channel: Channel) => number;
export declare const PutUserProfile: () => ParameterDecorator & PropertyDecorator;
export declare const PutChannelProfile: () => ParameterDecorator & PropertyDecorator;
export declare const PutIsGlobal: () => ParameterDecorator & PropertyDecorator;
