import { CustomMove, MaterialGame, MaterialMove, PlayerTurnRule } from '@gamepark/rules-api'; import { Action } from '../../material/Action'; import { Alliance } from '../../material/Alliance'; import { Product } from '../../material/Product'; import { RuleId } from '../RuleId'; export declare abstract class ActionRule extends PlayerTurnRule { action: A; constructor(game: MaterialGame, action?: A); get actions(): Action[]; onCustomMove(move: CustomMove): MaterialMove[]; addActions(...action: Action[]): void; startNextRule(): import("@gamepark/rules-api").StartRule | import("@gamepark/rules-api").StartPlayerTurn; get nextRuleId(): RuleId; hasAlliance(alliance: Alliance, player?: number): boolean; getProducts(player?: number): import("@gamepark/rules-api").Material; getProduct(product: Product, player?: number): import("@gamepark/rules-api").Material; canAffordAfterSpending(_product: Product): boolean; onRuleEnd(): never[]; } //# sourceMappingURL=ActionRule.d.ts.map