@metreeca/blue - v0.13.1
    Preparing search index...

    Type Alias Entry<S>

    Entry: S extends Shape
        ? {
            kind: S["kind"];
            field: Identifier;
            property: Property;
            shape: S;
            value: State<S>;
        }
        : never

    One value a state holds, paired with the property holding it, its field name and the shape it matches.

    Narrowing an entry on kind narrows shape and value together, typing value as the state of shape. Union values are resolved to the branch they match, so no entry ever has kind union.

    Type Parameters

    • S extends Shape = Exclude<Shape, UnionShape>

      The value shapes an entry may match; defaults to every shape except unions