GLIDEPATH_ERROR_MESSAGES: {
    AGES: {
        NEGATIVE_START_AGE: "startAge must be positive";
        NEGATIVE_END_AGE: "endAge must be positive";
        START_AGE_TOO_HIGH: "startAge must be less than endAge";
        AGE_DIFFERENCE_TOO_SMALL: "Age difference (endAge - startAge) must be at least 1 year";
        AGE_OUT_OF_BOUNDS: "Ages must be between 0.1 and 150 years";
    };
    FINANCIAL: {
        NEGATIVE_BALANCE: "initialBalance must be non-negative";
        NEGATIVE_CONTRIBUTION: "monthlyContribution must be non-negative";
        BALANCE_TOO_LARGE: "initialBalance exceeds maximum safe calculation limit";
    };
    RETURNS: {
        RETURN_TOO_LOW: "Return rates must be greater than -0.99 (cannot lose more than 99%)";
        RETURN_TOO_HIGH: "Return rates above 100% annual return are not supported";
        HIGH_RETURN_WARNING: "Return rates above 25% should be used with caution";
    };
    ALLOCATIONS: {
        WEIGHT_BELOW_ZERO: "Allocation weights must be between 0.0 and 1.0 inclusive";
        WEIGHT_ABOVE_ONE: "Allocation weights must be between 0.0 and 1.0 inclusive";
    };
    MODES: {
        INVALID_MODE: "Invalid glidepath mode specified";
        MISSING_REQUIRED_FIELDS: "Required fields are missing for the specified glidepath mode";
    };
    WAYPOINTS: {
        EMPTY_WAYPOINTS: "Waypoints array must contain at least one waypoint";
        INVALID_WAYPOINT_AGE: "Waypoint ages must be positive";
        INVALID_WAYPOINT_VALUE: "Waypoint values must be valid for the specified value type";
        TOO_MANY_WAYPOINTS: "Too many waypoints may impact performance";
        MISSING_EQUITY_RETURN: "equityReturn is required when valueType is \"equityWeight\"";
        MISSING_BOND_RETURN: "bondReturn is required when valueType is \"equityWeight\"";
    };
    GENERAL: {
        INVALID_CONTRIBUTION_TIMING: "contributionTiming must be \"start\" or \"end\"";
        CONFIGURATION_MISMATCH: "Glidepath configuration does not match the specified mode";
    };
} = ...

Error messages for dynamic glidepath validation failures. These provide clear, actionable feedback to developers and users.

Type declaration

  • Readonly AGES: {
        NEGATIVE_START_AGE: "startAge must be positive";
        NEGATIVE_END_AGE: "endAge must be positive";
        START_AGE_TOO_HIGH: "startAge must be less than endAge";
        AGE_DIFFERENCE_TOO_SMALL: "Age difference (endAge - startAge) must be at least 1 year";
        AGE_OUT_OF_BOUNDS: "Ages must be between 0.1 and 150 years";
    }

    Age-related validation errors.

    • Readonly NEGATIVE_START_AGE: "startAge must be positive"
    • Readonly NEGATIVE_END_AGE: "endAge must be positive"
    • Readonly START_AGE_TOO_HIGH: "startAge must be less than endAge"
    • Readonly AGE_DIFFERENCE_TOO_SMALL: "Age difference (endAge - startAge) must be at least 1 year"
    • Readonly AGE_OUT_OF_BOUNDS: "Ages must be between 0.1 and 150 years"
  • Readonly FINANCIAL: {
        NEGATIVE_BALANCE: "initialBalance must be non-negative";
        NEGATIVE_CONTRIBUTION: "monthlyContribution must be non-negative";
        BALANCE_TOO_LARGE: "initialBalance exceeds maximum safe calculation limit";
    }

    Financial parameter validation errors.

    • Readonly NEGATIVE_BALANCE: "initialBalance must be non-negative"
    • Readonly NEGATIVE_CONTRIBUTION: "monthlyContribution must be non-negative"
    • Readonly BALANCE_TOO_LARGE: "initialBalance exceeds maximum safe calculation limit"
  • Readonly RETURNS: {
        RETURN_TOO_LOW: "Return rates must be greater than -0.99 (cannot lose more than 99%)";
        RETURN_TOO_HIGH: "Return rates above 100% annual return are not supported";
        HIGH_RETURN_WARNING: "Return rates above 25% should be used with caution";
    }

    Return rate validation errors.

    • Readonly RETURN_TOO_LOW: "Return rates must be greater than -0.99 (cannot lose more than 99%)"
    • Readonly RETURN_TOO_HIGH: "Return rates above 100% annual return are not supported"
    • Readonly HIGH_RETURN_WARNING: "Return rates above 25% should be used with caution"
  • Readonly ALLOCATIONS: {
        WEIGHT_BELOW_ZERO: "Allocation weights must be between 0.0 and 1.0 inclusive";
        WEIGHT_ABOVE_ONE: "Allocation weights must be between 0.0 and 1.0 inclusive";
    }

    Allocation weight validation errors.

    • Readonly WEIGHT_BELOW_ZERO: "Allocation weights must be between 0.0 and 1.0 inclusive"
    • Readonly WEIGHT_ABOVE_ONE: "Allocation weights must be between 0.0 and 1.0 inclusive"
  • Readonly MODES: {
        INVALID_MODE: "Invalid glidepath mode specified";
        MISSING_REQUIRED_FIELDS: "Required fields are missing for the specified glidepath mode";
    }

    Glidepath mode validation errors.

    • Readonly INVALID_MODE: "Invalid glidepath mode specified"
    • Readonly MISSING_REQUIRED_FIELDS: "Required fields are missing for the specified glidepath mode"
  • Readonly WAYPOINTS: {
        EMPTY_WAYPOINTS: "Waypoints array must contain at least one waypoint";
        INVALID_WAYPOINT_AGE: "Waypoint ages must be positive";
        INVALID_WAYPOINT_VALUE: "Waypoint values must be valid for the specified value type";
        TOO_MANY_WAYPOINTS: "Too many waypoints may impact performance";
        MISSING_EQUITY_RETURN: "equityReturn is required when valueType is \"equityWeight\"";
        MISSING_BOND_RETURN: "bondReturn is required when valueType is \"equityWeight\"";
    }

    Waypoint validation errors.

    • Readonly EMPTY_WAYPOINTS: "Waypoints array must contain at least one waypoint"
    • Readonly INVALID_WAYPOINT_AGE: "Waypoint ages must be positive"
    • Readonly INVALID_WAYPOINT_VALUE: "Waypoint values must be valid for the specified value type"
    • Readonly TOO_MANY_WAYPOINTS: "Too many waypoints may impact performance"
    • Readonly MISSING_EQUITY_RETURN: "equityReturn is required when valueType is \"equityWeight\""
    • Readonly MISSING_BOND_RETURN: "bondReturn is required when valueType is \"equityWeight\""
  • Readonly GENERAL: {
        INVALID_CONTRIBUTION_TIMING: "contributionTiming must be \"start\" or \"end\"";
        CONFIGURATION_MISMATCH: "Glidepath configuration does not match the specified mode";
    }

    General configuration errors.

    • Readonly INVALID_CONTRIBUTION_TIMING: "contributionTiming must be \"start\" or \"end\""
    • Readonly CONFIGURATION_MISMATCH: "Glidepath configuration does not match the specified mode"

Generated using TypeDoc