typir
Version:
General purpose type checking library
25 lines • 1.38 kB
TypeScript
/******************************************************************************
* Copyright 2024 TypeFox GmbH
* This program and the accompanying materials are made available under the
* terms of the MIT License, which is available in the project root.
******************************************************************************/
import { Type } from '../../graph/type-node.js';
import { TypirSpecifics } from '../../typir.js';
import { TypirProblem } from '../../utils/utils-definitions.js';
import { MultiplicityKind, MultiplicityTypeDetails } from './multiplicity-kind.js';
export declare class MultiplicityType extends Type {
readonly kind: MultiplicityKind<TypirSpecifics>;
readonly constrainedType: Type;
readonly lowerBound: number;
readonly upperBound: number;
constructor(kind: MultiplicityKind<TypirSpecifics>, identifier: string, typeDetails: MultiplicityTypeDetails<TypirSpecifics>);
getName(): string;
getUserRepresentation(): string;
analyzeTypeEqualityProblems(otherType: Type): TypirProblem[];
protected analyzeSubTypeProblems(subType: MultiplicityType, superType: MultiplicityType): TypirProblem[];
getConstrainedType(): Type;
getLowerBound(): number;
getUpperBound(): number;
}
export declare function isMultiplicityType(type: unknown): type is MultiplicityType;
//# sourceMappingURL=multiplicity-type.d.ts.map