Interface PredicateType

interface PredicateType {
    asserts: boolean;
    name: string;
    type: "predicate";
    targetType?:
        | JSONOutput.LiteralType
        | JSONOutput.UnknownType
        | JSONOutput.ReferenceType
        | JSONOutput.OptionalType
        | JSONOutput.ArrayType
        | JSONOutput.ConditionalType
        | JSONOutput.IndexedAccessType
        | JSONOutput.InferredType
        | JSONOutput.IntersectionType
        | JSONOutput.IntrinsicType
        | JSONOutput.MappedType
        | JSONOutput.PredicateType
        | JSONOutput.QueryType
        | JSONOutput.ReflectionType
        | JSONOutput.RestType
        | JSONOutput.TemplateLiteralType
        | JSONOutput.TupleType
        | NamedTupleMemberType
        | JSONOutput.TypeOperatorType
        | JSONOutput.UnionType;
}

Hierarchy (View Summary)

Properties

asserts: boolean

True if the type is of the form asserts val is string, false if the type is of the form val is string

name: string

The identifier name which is tested by the predicate.

type: "predicate"

The type name identifier.

The type that the identifier is tested to be. May be undefined if the type is of the form asserts val. Will be defined if the type is of the form asserts val is string or val is string.