"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.none = function () {
    return {
        kind: "none",
        map: function (f) { return map(f)(this); }
    };
};
exports.some = function (x) {
    return {
        kind: "some", value: x,
        map: function (f) { return map(f)(this); }
    };
};
let map = function (f) { return x => x.kind == "none" ? exports.none() : exports.some(f(x.value)); };
//# sourceMappingURL=option.js.map