tsgammon-core
Version:
A Backgammon library for Typescript, formerly developed as a part of tsgammon-ui
21 lines (17 loc) • 670 B
text/typescript
import { SingleGameListener } from './SingleGameListener'
import { SGInPlay, SGOpening, SGToRoll } from './SingleGameState'
/**
* SingleGameについてU.I.として提供される定義:引数には、イベント発生前の状態を渡さないといけない。
*
*/
export type SingleGameEventHandler = {
onStartGame: () => void
onCommit: (sgState: SGInPlay) => void
onRoll: (sgState: SGToRoll) => void
onRollOpening: (sgState: SGOpening) => void
}
export type SingleGameEventHandlerExtensible = SingleGameEventHandler & {
addListeners: (
...sgListeners: Partial<SingleGameListener>[]
) => SingleGameEventHandlerExtensible
}