credl-parser-evaluator
Version:
TypeScript-based CREDL Parser and Evaluator that processes CREDL files and outputs complete Intermediate Representations
80 lines • 3.78 kB
JavaScript
;
/**
* TypeScript type definitions for CREDL (Commercial Real Estate Domain Language) v0.2
*
* This file contains all interfaces and types needed to represent CREDL constructs
* including core blocks, extension blocks, and intermediate representations.
*/
Object.defineProperty(exports, "__esModule", { value: true });
exports.isTableAssumption = exports.isExpressionAssumption = exports.isDistributionAssumption = exports.isFixedAssumption = exports.OutputFormat = exports.DistributionType = exports.SimulationType = exports.ModelType = exports.LeaseStatus = exports.LeaseType = exports.PropertyType = exports.SpaceType = exports.AssumptionType = void 0;
// =============================================================================
// ENUMS
// =============================================================================
var AssumptionType;
(function (AssumptionType) {
AssumptionType["FIXED"] = "fixed";
AssumptionType["DISTRIBUTION"] = "distribution";
AssumptionType["EXPRESSION"] = "expression";
AssumptionType["TABLE"] = "table";
})(AssumptionType || (exports.AssumptionType = AssumptionType = {}));
var SpaceType;
(function (SpaceType) {
SpaceType["OFFICE"] = "office";
SpaceType["RETAIL"] = "retail";
SpaceType["INDUSTRIAL"] = "industrial";
SpaceType["RESIDENTIAL"] = "residential";
})(SpaceType || (exports.SpaceType = SpaceType = {}));
var PropertyType;
(function (PropertyType) {
PropertyType["OFFICE"] = "Office";
PropertyType["RETAIL"] = "Retail";
PropertyType["INDUSTRIAL"] = "Industrial";
PropertyType["RESIDENTIAL"] = "Residential";
PropertyType["MIXED_USE"] = "Mixed Use";
PropertyType["HOSPITALITY"] = "Hospitality";
PropertyType["HEALTHCARE"] = "Healthcare";
})(PropertyType || (exports.PropertyType = PropertyType = {}));
var LeaseType;
(function (LeaseType) {
LeaseType["GROSS"] = "gross";
LeaseType["NNN"] = "NNN";
LeaseType["MODIFIED_GROSS"] = "modified_gross";
})(LeaseType || (exports.LeaseType = LeaseType = {}));
var LeaseStatus;
(function (LeaseStatus) {
LeaseStatus["LEASED"] = "leased";
LeaseStatus["VACANT"] = "vacant";
})(LeaseStatus || (exports.LeaseStatus = LeaseStatus = {}));
var ModelType;
(function (ModelType) {
ModelType["DETERMINISTIC"] = "deterministic";
ModelType["STOCHASTIC"] = "stochastic";
})(ModelType || (exports.ModelType = ModelType = {}));
var SimulationType;
(function (SimulationType) {
SimulationType["MONTE_CARLO"] = "monte_carlo";
})(SimulationType || (exports.SimulationType = SimulationType = {}));
var DistributionType;
(function (DistributionType) {
DistributionType["NORMAL"] = "normal";
DistributionType["UNIFORM"] = "uniform";
DistributionType["TRIANGULAR"] = "triangular";
DistributionType["LOGNORMAL"] = "lognormal";
})(DistributionType || (exports.DistributionType = DistributionType = {}));
var OutputFormat;
(function (OutputFormat) {
OutputFormat["JSON"] = "json";
OutputFormat["CSV"] = "csv";
OutputFormat["EXCEL"] = "excel";
OutputFormat["PDF"] = "pdf";
})(OutputFormat || (exports.OutputFormat = OutputFormat = {}));
// Type guards for assumption types
const isFixedAssumption = (assumption) => assumption.type === AssumptionType.FIXED;
exports.isFixedAssumption = isFixedAssumption;
const isDistributionAssumption = (assumption) => assumption.type === AssumptionType.DISTRIBUTION;
exports.isDistributionAssumption = isDistributionAssumption;
const isExpressionAssumption = (assumption) => assumption.type === AssumptionType.EXPRESSION;
exports.isExpressionAssumption = isExpressionAssumption;
const isTableAssumption = (assumption) => assumption.type === AssumptionType.TABLE;
exports.isTableAssumption = isTableAssumption;
//# sourceMappingURL=CREDLTypes.js.map