@randsum/notation
Version:
A flexible, type-safe dice notation parser and validator
26 lines • 1.07 kB
TypeScript
import type { CustomDiceNotation, CustomRollOptions, NumericDiceNotation, NumericRollOptions } from '@randsum/core';
interface BaseValidationResult {
valid: boolean;
type: 'numerical' | 'custom' | 'invalid';
description: string[];
}
export interface NumericValidationResult extends BaseValidationResult {
valid: true;
type: 'numerical';
digested: NumericRollOptions;
notation: NumericDiceNotation;
}
export interface CustomValidationResult extends BaseValidationResult {
valid: true;
type: 'custom';
digested: CustomRollOptions;
notation: CustomDiceNotation;
}
export interface InvalidValidationResult extends BaseValidationResult {
valid: false;
type: 'invalid';
digested: Record<string, never>;
}
export type ValidationResult = NumericValidationResult | CustomValidationResult | InvalidValidationResult;
export type { BaseRollOptions, CustomDiceNotation, CustomRollOptions, DiceNotation, ModifierOptions, NumericDiceNotation, NumericRollOptions, RollOptions } from '@randsum/core';
//# sourceMappingURL=types.d.ts.map