import { GameFormatString } from '../enums/game-format';
import { ReferenceCard } from '../models/reference-cards/reference-card';
import { CardClass, GameFormat, GameTag, GameType, Race, SpellSchool } from '../public-api';
import { AllCardsService } from './all-cards.service';
export declare const ALL_CLASSES: string[];
export declare const formatFormat: (format: GameFormat) => GameFormatString;
export declare const formatFormatReverse: (format: GameFormatString) => GameFormat;
export declare const formatGameType: (gameType: GameType) => string;
export declare const formatGameTypeReverse: (gameType: string) => GameType;
export declare const getDefaultHeroDbfIdForClass: (playerClass: string) => number;
export declare const isArena: (gameType: GameType | string) => boolean;
export declare const normalizeDeckHeroDbfId: (heroDbfId: number, cards: AllCardsService, duelsClass?: CardClass, deckClass?: CardClass) => number;
export declare const isBattlegroundsCard: (card: ReferenceCard) => boolean;
export declare const getEffectiveTechLevel: (card: ReferenceCard, allCards: AllCardsService) => number;
export declare const hasCorrectTribe: (card: ReferenceCard, targetTribe: Race) => boolean;
export declare const hasMechanic: (card: ReferenceCard, mechanic: GameTag) => boolean;
export declare const hasSpellSchool: (card: ReferenceCard, spellSchool: SpellSchool) => boolean;
export declare const getEffectiveTribesEnumBase: (card: ReferenceCard) => readonly Race[];
