40 lines
2.2 KiB
TypeScript
40 lines
2.2 KiB
TypeScript
import { FFIError } from "./diplomat-runtime"
|
|
import { ICU4XDataProvider } from "./ICU4XDataProvider";
|
|
import { ICU4XError } from "./ICU4XError";
|
|
import { ICU4XMeasureUnit } from "./ICU4XMeasureUnit";
|
|
import { ICU4XMeasureUnitParser } from "./ICU4XMeasureUnitParser";
|
|
import { ICU4XUnitsConverter } from "./ICU4XUnitsConverter";
|
|
|
|
/**
|
|
|
|
* An ICU4X Units Converter Factory object, capable of creating converters a {@link ICU4XUnitsConverter `ICU4XUnitsConverter`} for converting between two {@link ICU4XMeasureUnit `ICU4XMeasureUnit`}s. Also, it can parse the CLDR unit identifier (e.g. `meter-per-square-second`) and get the {@link ICU4XMeasureUnit `ICU4XMeasureUnit`}.
|
|
|
|
* See the {@link https://docs.rs/icu/latest/icu/experimental/units/converter_factory/struct.ConverterFactory.html Rust documentation for `ConverterFactory`} for more information.
|
|
*/
|
|
export class ICU4XUnitsConverterFactory {
|
|
|
|
/**
|
|
|
|
* Construct a new {@link ICU4XUnitsConverterFactory `ICU4XUnitsConverterFactory`} instance.
|
|
|
|
* See the {@link https://docs.rs/icu/latest/icu/experimental/units/converter_factory/struct.ConverterFactory.html#method.new Rust documentation for `new`} for more information.
|
|
* @throws {@link FFIError}<{@link ICU4XError}>
|
|
*/
|
|
static create(provider: ICU4XDataProvider): ICU4XUnitsConverterFactory | never;
|
|
|
|
/**
|
|
|
|
* Creates a new {@link ICU4XUnitsConverter `ICU4XUnitsConverter`} from the input and output {@link ICU4XMeasureUnit `ICU4XMeasureUnit`}s. Returns nothing if the conversion between the two units is not possible. For example, conversion between `meter` and `second` is not possible.
|
|
|
|
* See the {@link https://docs.rs/icu/latest/icu/experimental/units/converter_factory/struct.ConverterFactory.html#method.converter Rust documentation for `converter`} for more information.
|
|
*/
|
|
converter(from: ICU4XMeasureUnit, to: ICU4XMeasureUnit): ICU4XUnitsConverter | undefined;
|
|
|
|
/**
|
|
|
|
* Creates a parser to parse the CLDR unit identifier (e.g. `meter-per-square-second`) and get the {@link ICU4XMeasureUnit `ICU4XMeasureUnit`}.
|
|
|
|
* See the {@link https://docs.rs/icu/latest/icu/experimental/units/converter_factory/struct.ConverterFactory.html#method.parser Rust documentation for `parser`} for more information.
|
|
*/
|
|
parser(): ICU4XMeasureUnitParser;
|
|
}
|