UNPKG

@minofrk/msf-io-ts

Version:

Type utilities with io-ts for MSF format.

42 lines 1.22 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var io_ts_1 = require("io-ts"); var piece_1 = require("./piece"); exports.Coordinate = io_ts_1.union([ io_ts_1.literal(0), io_ts_1.literal(1), io_ts_1.literal(2), io_ts_1.literal(3), io_ts_1.literal(4), io_ts_1.literal(5), io_ts_1.literal(6), ]); exports.Position = io_ts_1.type({ alsia: exports.Coordinate, soom: exports.Coordinate, }); exports.FromTo = io_ts_1.type({ i: exports.Position, a: exports.Position, }); exports.LeimMove = io_ts_1.type({ pit: io_ts_1.literal('leim'), luul: io_ts_1.tuple([exports.FromTo]), }); exports.OkkeMove = io_ts_1.type({ pit: io_ts_1.literal('okke'), luul: io_ts_1.tuple([exports.FromTo, exports.FromTo]), }); exports.KorMove = io_ts_1.type({ pit: io_ts_1.literal('kor'), ka: exports.Position, }); exports.EvMove = io_ts_1.type({ pit: io_ts_1.literal('ev'), evol: io_ts_1.union([piece_1.Arxe, piece_1.Sorn]), }); exports.SedMove = io_ts_1.type({ pit: io_ts_1.literal('sed'), }); exports.Move = io_ts_1.union([exports.LeimMove, exports.OkkeMove, exports.KorMove, exports.EvMove, exports.SedMove]); //# sourceMappingURL=move.js.map