aurelia / validation

A validation plugin for Aurelia.
MIT License
132 stars 128 forks source link

Typings incomplete / using any instead of type #557

Open MJLHThomassen-Sorama opened 3 years ago

MJLHThomassen-Sorama commented 3 years ago

I'm submitting a bug report

Please tell us about your environment:

Current behavior:

In the aurelia-validation.d.ts file currently there this bit of code:

export declare class ValidationRules {
    private static parsers;
    static initialize(messageParser: ValidationMessageParser, propertyParser: PropertyAccessorParser): void;
    /**
     * Target a property with validation rules.
     * @param property The property to target. Can be the property name or a property accessor function.
     */
    static ensure<TObject, TValue>(property: string | number | PropertyAccessor<TObject, TValue>): FluentRules<TObject, any>;

The ensure() method returns a FluentRules<TObject, any>, wile i would expect it to return a FluentRules<TObject, TValue>. The FluentRules class is fully typed properly with the TValue parameter, but all instances of FluentRules specify "any" as the second type parameter which cancels all the nice typescript benefits of type checking on the value.

Expected/desired behavior: All methods that return a FluentRules have it properly typed, 'any' is not used.

Sayan751 commented 3 years ago

I think the typing issue is fixed from the beginning in Aurelia v2. However, I am sure if we have the bandwidth to fix v1 issues :(

Alexander-Taran commented 3 years ago

Would you like to provide a pull request for it @MJLHThomassen-Sorama ?