ts-flex-query
Version:
Flexible and type-safe data queries
40 lines • 1.56 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
/* eslint-disable @typescript-eslint/no-unused-expressions */
const helpers_1 = require("../helpers");
const utils_1 = require("../helpers/utils");
const operators_1 = require("../operators");
function assertEvaluatedResultTypeIsCorrect() {
const x1 = undefined;
(0, utils_1.expectType)()(x1, true);
const x2 = undefined;
(0, utils_1.expectType)()(x2, true);
// @ts-expect-error x2 is expected to be number | undefined.
(0, utils_1.expectType)()(x2, true);
const x3 = undefined;
(0, utils_1.expectType)()(x3.field1, true);
(0, utils_1.expectType)()(x3.field2, true);
(0, utils_1.expectType)()(x3.field3, true);
// @ts-expect-error x3.field3 is expected to be number | undefined.
(0, utils_1.expectType)()(x3.field3, true);
const x4 = undefined;
(0, utils_1.expectType)()(x4.fieldA, true);
// @ts-expect-error fieldB is not primitive.
x4.fieldB;
// @ts-expect-error fieldC is not primitive.
x4.fieldC;
const q5 = new helpers_1.QueryFactory().create((0, operators_1.querySchema)([{
fieldB: {
field1: true
},
fieldE: {
fieldA: true
}
}]));
const x5 = undefined;
(0, utils_1.expectType)()(x5[0].fieldB, true);
(0, utils_1.expectType)()(x5[0].fieldE, true);
// @ts-expect-error fieldE is nullable.
(0, utils_1.expectType)()(x5[0].fieldE, true);
}
//# sourceMappingURL=evaluated-result-type.typespec.js.map