import { User } from '../database/entities/User';
import { RoleMultiplier } from '../database/entities/RoleMultiplier';
import { Transaction, TransactionType } from '../database/entities/Transaction';
import { Exclusion, ExclusionType } from '../database/entities/Exclusion';
export declare function getUser(userId: string): Promise<User>;
export declare function getBalance(userId: string): Promise<number>;
export declare function addCoins(userId: string, amount: number, type: TransactionType, description?: string, relatedUserId?: string): Promise<void>;
export declare function transfer(senderId: string, receiverId: string, amount: number): Promise<{
    success: boolean;
    error?: string;
    fee?: number;
}>;
export declare function incrementMessageCount(userId: string): Promise<void>;
export declare function addVoiceMinutes(userId: string, minutes: number): Promise<void>;
export declare function markUserLeft(userId: string, left: boolean): Promise<void>;
export declare function getConfig(key: string, defaultValue: number): Promise<number>;
export declare function getConfigString(key: string, defaultValue?: string): Promise<string>;
export declare function setConfig(key: string, value: string | number): Promise<void>;
export declare function getMultiplierSum(roleIds: string[]): Promise<number>;
export declare function setMultiplier(roleId: string, multiplier: number, expiresAt?: Date): Promise<void>;
export declare function removeMultiplier(roleId: string): Promise<boolean>;
export declare function listMultipliers(): Promise<RoleMultiplier[]>;
export declare function cleanupExpiredMultipliers(): Promise<number>;
export declare function isExcluded(guildId: string, type: ExclusionType, targetId: string): Promise<boolean>;
export declare function isUserExcluded(guildId: string, userId: string, roleIds: string[]): Promise<boolean>;
export declare function isChannelExcluded(guildId: string, channelId: string): Promise<boolean>;
export declare function addExclusion(guildId: string, type: ExclusionType, targetId: string): Promise<void>;
export declare function removeExclusion(guildId: string, type: ExclusionType, targetId: string): Promise<boolean>;
export declare function listExclusions(guildId: string): Promise<Exclusion[]>;
export declare function getTransactionHistory(userId: string, limit?: number, excludeTypes?: string[]): Promise<Transaction[]>;
//# sourceMappingURL=economyService.d.ts.map