UNPKG

@qudtlib/core

Version:

Data model for QUDTLib

72 lines (71 loc) 3.37 kB
import { SupportsEquals } from "./baseTypes.js"; import { LangString } from "./langString.js"; import { Prefix } from "./prefix.js"; import { QuantityKind } from "./quantityKind.js"; import { FactorUnit } from "./factorUnit.js"; import { FactorUnits } from "./factorUnits.js"; import { Decimal } from "decimal.js"; export declare class Unit implements SupportsEquals<Unit> { readonly iri: string; readonly labels: LangString[]; readonly currencyCode: string | undefined; readonly currencyNumber: number | undefined; readonly prefixIri?: string; prefix?: Prefix; readonly conversionMultiplier: Decimal; readonly conversionOffset: Decimal; readonly quantityKindIris: string[]; readonly quantityKinds: QuantityKind[]; readonly exactMatchIris: string[]; readonly symbol?: string; readonly dependents: number; readonly deprecated: boolean; readonly generated: boolean; readonly scalingOfIri?: string; scalingOf?: Unit; readonly dimensionVectorIri?: string; factorUnits: FactorUnits; readonly unitOfSystemIris: string[]; private static TEMPERATURE_DIFFERENCE; constructor(iri: string, quantityKindIris?: string[], exactMatchIris?: string[], dimensionVectorIri?: string, conversionMultiplier?: Decimal, conversionOffset?: Decimal, prefixIri?: string, scalingOfIri?: string, scalingOf?: Unit, symbol?: string, labels?: LangString[], currencyCode?: string, currencyNumber?: number, unitOfSystemIris?: string[], dependents?: number, deprecated?: boolean, generated?: boolean); equals(other?: Unit): boolean; toString(): string; getIriLocalname(): string; getIriAbbreviated(): string; isCurrencyUnit(): boolean; matchesFactorUnitSpec(...factorUnitSpec: (number | Unit)[]): boolean; matches(selection: FactorUnits): boolean; hasFactorUnits(): boolean; /** * Returns true if this unit is defined to be another unit, such as litre is defined as cubic decimetre. */ isDefinedAsOtherUnit(): boolean; isScaled(): boolean; hasSymbol(): boolean; isConvertible(toUnit: Unit): boolean; getConversionMultiplier(toUnit: Unit): Decimal; private findInBasesRecursively; isSameScaleAs(other: Unit): boolean; static isUnitless(unit: Unit): boolean; convert(value: Decimal, toUnit: Unit, quantityKind?: QuantityKind): Decimal; addLabel(label: LangString): void; addQuantityKindIri(quantityKindIri: string): void; addExactMatchIri(exactMatchIri: string): void; hasLabel(label: string): boolean; getLabelForLanguageTag(languageTag: string): string | undefined; addQuantityKind(quantityKind: QuantityKind): void; setFactorUnits(factorUnits: FactorUnits): void; setPrefix(prefix: Prefix): void; setScalingOf(scalingOf: Unit): void; /** * Returns this unit as a set of exponent-reduced factors, unless they are two factors that cancel each other out, in * which case return the unit as a factor unit with exponent 1. For example, Steradian is m²/m² and will * therefore return SR. */ normalize(): FactorUnits; getLeafFactorUnitsWithCumulativeExponents(): FactorUnit[]; getAllPossibleFactorUnitCombinations(): FactorUnit[][]; conversionOffsetDiffers(other: Unit): boolean; hasNonzeroConversionOffset(): boolean; } //# sourceMappingURL=unit.d.ts.map