werewolf-core
Version:
Are you a WEREWOLF?
16 lines (15 loc) • 845 B
TypeScript
import * as lib from '../lib';
import { Player, RoleInfo } from './player';
import { Effect } from './effect';
import { Field } from './field';
import { EventRunner, HandlerParamWithPlayer, HandlerParamWithEffect, HandlerProducer, EventActions } from './handler';
export declare type Package = lib.Package<Player, Effect, Field>;
export interface RolePackage<Pl extends Player> extends Package, RoleInfo<Pl> {
}
export interface PartialPackage {
ruleProducers?: Array<HandlerProducer>;
playerProducers?: lib.KeyedHandlerProducers<Player, Effect, Field, EventRunner, HandlerParamWithPlayer>;
effectProducers?: lib.KeyedHandlerProducers<Player, Effect, Field, EventRunner, HandlerParamWithEffect>;
actions?: EventActions;
}
export declare function initPackage<Pl extends Player>(p: PartialPackage & RoleInfo<Pl>): RolePackage<Pl>;