monte-carlo-simulator
Version:
Business decision framework with Monte Carlo risk analysis - instant via npx
63 lines (62 loc) • 1.52 kB
TypeScript
export interface SimulationConfig {
name: string;
category: string;
description: string;
version: string;
tags: string[];
baseSimulation?: string;
businessContext?: boolean;
parameters: ParameterConfig[];
groups?: ParameterGroupConfig[];
outputs?: OutputConfig[];
simulation?: {
logic: string;
};
}
export type ParameterType = 'number' | 'boolean' | 'string' | 'select';
export interface ParameterConfig {
key: string;
label: string;
type: ParameterType;
default: number | boolean | string;
min?: number;
max?: number;
step?: number;
options?: string[];
description?: string;
}
export interface ParameterGroupConfig {
name: string;
description?: string;
parameters: string[];
}
export type OutputType = 'number' | 'boolean' | 'string';
export interface OutputConfig {
key: string;
label: string;
type?: OutputType;
description?: string;
}
export interface RunOptions {
scenario?: string;
compare?: string;
params?: string;
iterations?: number;
output?: string;
format?: 'table' | 'json' | 'csv' | 'quiet' | 'document';
verbose?: boolean;
quiet?: boolean;
interactive?: boolean;
set?: string[];
[key: string]: any;
}
export declare class ConfigurationValidator {
private ajv;
private validate;
constructor();
validateConfig(config: unknown): {
valid: boolean;
errors: string[];
};
private validateBusinessRules;
}