UNPKG

@randsum/notation

Version:

A flexible, type-safe dice notation parser and validator

46 lines (40 loc) 2.46 kB
import { BaseRollOptions, ComparisonOptions, CustomDiceNotation, CustomDiceNotation as CustomDiceNotation$1, CustomRollOptions, CustomRollOptions as CustomRollOptions$1, DiceNotation, DiceNotation as DiceNotation$1, DropOptions, ModifierOptions, NumericDiceNotation, NumericDiceNotation as NumericDiceNotation$1, NumericRollOptions, NumericRollOptions as NumericRollOptions$1, ReplaceOptions, RerollOptions, RollOptions, RollOptions as RollOptions$1, UniqueOptions } from "@randsum/core"; //#region \0virtual:/home/runner/work/randsum/randsum/packages/notation/src/types.d.ts interface BaseValidationResult { valid: boolean; type: "numerical" | "custom" | "invalid"; description: string[]; } interface NumericValidationResult extends BaseValidationResult { valid: true; type: "numerical"; digested: NumericRollOptions$1; notation: NumericDiceNotation$1; } interface CustomValidationResult extends BaseValidationResult { valid: true; type: "custom"; digested: CustomRollOptions$1; notation: CustomDiceNotation$1; } interface InvalidValidationResult extends BaseValidationResult { valid: false; type: "invalid"; digested: Record<string, never>; } type ValidationResult = NumericValidationResult | CustomValidationResult | InvalidValidationResult; //#endregion //#region \0virtual:/home/runner/work/randsum/randsum/packages/notation/src/isDiceNotation.d.ts declare function isDiceNotation(argument: unknown): argument is DiceNotation$1; //#endregion //#region \0virtual:/home/runner/work/randsum/randsum/packages/notation/src/validateNotation.d.ts declare function validateNotation(notation: string): ValidationResult; //#endregion //#region \0virtual:/home/runner/work/randsum/randsum/packages/notation/src/patterns.d.ts declare const coreNotationPattern: RegExp; declare const completeRollPattern: RegExp; //#endregion //#region \0virtual:/home/runner/work/randsum/randsum/packages/notation/src/utils/notationToOptions.d.ts declare function notationToOptions(notationString: DiceNotation$1): RollOptions$1; //#endregion export { BaseRollOptions, ComparisonOptions, CustomDiceNotation, CustomRollOptions, CustomValidationResult, DiceNotation, DropOptions, InvalidValidationResult, ModifierOptions, NumericDiceNotation, NumericRollOptions, NumericValidationResult, ReplaceOptions, RerollOptions, RollOptions, UniqueOptions, ValidationResult, completeRollPattern, coreNotationPattern, isDiceNotation, notationToOptions, validateNotation };