summaryrefslogtreecommitdiffstats
path: root/intl/icu_capi/js/package/lib/ICU4XCaseMapper.d.ts
diff options
context:
space:
mode:
Diffstat (limited to 'intl/icu_capi/js/package/lib/ICU4XCaseMapper.d.ts')
-rw-r--r--intl/icu_capi/js/package/lib/ICU4XCaseMapper.d.ts134
1 files changed, 134 insertions, 0 deletions
diff --git a/intl/icu_capi/js/package/lib/ICU4XCaseMapper.d.ts b/intl/icu_capi/js/package/lib/ICU4XCaseMapper.d.ts
new file mode 100644
index 0000000000..eb472c809b
--- /dev/null
+++ b/intl/icu_capi/js/package/lib/ICU4XCaseMapper.d.ts
@@ -0,0 +1,134 @@
+import { char } from "./diplomat-runtime"
+import { FFIError } from "./diplomat-runtime"
+import { ICU4XCodePointSetBuilder } from "./ICU4XCodePointSetBuilder";
+import { ICU4XDataProvider } from "./ICU4XDataProvider";
+import { ICU4XError } from "./ICU4XError";
+import { ICU4XLocale } from "./ICU4XLocale";
+import { ICU4XTitlecaseOptionsV1 } from "./ICU4XTitlecaseOptionsV1";
+
+/**
+
+ * See the {@link https://docs.rs/icu/latest/icu/casemap/struct.CaseMapper.html Rust documentation for `CaseMapper`} for more information.
+ */
+export class ICU4XCaseMapper {
+
+ /**
+
+ * Construct a new ICU4XCaseMapper instance
+
+ * See the {@link https://docs.rs/icu/latest/icu/casemap/struct.CaseMapper.html#method.new Rust documentation for `new`} for more information.
+ * @throws {@link FFIError}<{@link ICU4XError}>
+ */
+ static create(provider: ICU4XDataProvider): ICU4XCaseMapper | never;
+
+ /**
+
+ * Returns the full lowercase mapping of the given string
+
+ * See the {@link https://docs.rs/icu/latest/icu/casemap/struct.CaseMapper.html#method.lowercase Rust documentation for `lowercase`} for more information.
+ * @throws {@link FFIError}<{@link ICU4XError}>
+ */
+ lowercase(s: string, locale: ICU4XLocale): string | never;
+
+ /**
+
+ * Returns the full uppercase mapping of the given string
+
+ * See the {@link https://docs.rs/icu/latest/icu/casemap/struct.CaseMapper.html#method.uppercase Rust documentation for `uppercase`} for more information.
+ * @throws {@link FFIError}<{@link ICU4XError}>
+ */
+ uppercase(s: string, locale: ICU4XLocale): string | never;
+
+ /**
+
+ * Returns the full titlecase mapping of the given string, performing head adjustment without loading additional data. (if head adjustment is enabled in the options)
+
+ * The `v1` refers to the version of the options struct, which may change as we add more options
+
+ * See the {@link https://docs.rs/icu/latest/icu/casemap/struct.CaseMapper.html#method.titlecase_segment_with_only_case_data Rust documentation for `titlecase_segment_with_only_case_data`} for more information.
+ * @throws {@link FFIError}<{@link ICU4XError}>
+ */
+ titlecase_segment_with_only_case_data_v1(s: string, locale: ICU4XLocale, options: ICU4XTitlecaseOptionsV1): string | never;
+
+ /**
+
+ * Case-folds the characters in the given string
+
+ * See the {@link https://docs.rs/icu/latest/icu/casemap/struct.CaseMapper.html#method.fold Rust documentation for `fold`} for more information.
+ * @throws {@link FFIError}<{@link ICU4XError}>
+ */
+ fold(s: string): string | never;
+
+ /**
+
+ * Case-folds the characters in the given string using Turkic (T) mappings for dotted/dotless I.
+
+ * See the {@link https://docs.rs/icu/latest/icu/casemap/struct.CaseMapper.html#method.fold_turkic Rust documentation for `fold_turkic`} for more information.
+ * @throws {@link FFIError}<{@link ICU4XError}>
+ */
+ fold_turkic(s: string): string | never;
+
+ /**
+
+ * Adds all simple case mappings and the full case folding for `c` to `builder`. Also adds special case closure mappings.
+
+ * In other words, this adds all characters that this casemaps to, as well as all characters that may casemap to this one.
+
+ * Note that since ICU4XCodePointSetBuilder does not contain strings, this will ignore string mappings.
+
+ * Identical to the similarly named method on `ICU4XCaseMapCloser`, use that if you plan on using string case closure mappings too.
+
+ * See the {@link https://docs.rs/icu/latest/icu/casemap/struct.CaseMapper.html#method.add_case_closure_to Rust documentation for `add_case_closure_to`} for more information.
+ */
+ add_case_closure_to(c: char, builder: ICU4XCodePointSetBuilder): void;
+
+ /**
+
+ * Returns the simple lowercase mapping of the given character.
+
+ * This function only implements simple and common mappings. Full mappings, which can map one char to a string, are not included. For full mappings, use `ICU4XCaseMapper::lowercase`.
+
+ * See the {@link https://docs.rs/icu/latest/icu/casemap/struct.CaseMapper.html#method.simple_lowercase Rust documentation for `simple_lowercase`} for more information.
+ */
+ simple_lowercase(ch: char): char;
+
+ /**
+
+ * Returns the simple uppercase mapping of the given character.
+
+ * This function only implements simple and common mappings. Full mappings, which can map one char to a string, are not included. For full mappings, use `ICU4XCaseMapper::uppercase`.
+
+ * See the {@link https://docs.rs/icu/latest/icu/casemap/struct.CaseMapper.html#method.simple_uppercase Rust documentation for `simple_uppercase`} for more information.
+ */
+ simple_uppercase(ch: char): char;
+
+ /**
+
+ * Returns the simple titlecase mapping of the given character.
+
+ * This function only implements simple and common mappings. Full mappings, which can map one char to a string, are not included. For full mappings, use `ICU4XCaseMapper::titlecase_segment`.
+
+ * See the {@link https://docs.rs/icu/latest/icu/casemap/struct.CaseMapper.html#method.simple_titlecase Rust documentation for `simple_titlecase`} for more information.
+ */
+ simple_titlecase(ch: char): char;
+
+ /**
+
+ * Returns the simple casefolding of the given character.
+
+ * This function only implements simple folding. For full folding, use `ICU4XCaseMapper::fold`.
+
+ * See the {@link https://docs.rs/icu/latest/icu/casemap/struct.CaseMapper.html#method.simple_fold Rust documentation for `simple_fold`} for more information.
+ */
+ simple_fold(ch: char): char;
+
+ /**
+
+ * Returns the simple casefolding of the given character in the Turkic locale
+
+ * This function only implements simple folding. For full folding, use `ICU4XCaseMapper::fold_turkic`.
+
+ * See the {@link https://docs.rs/icu/latest/icu/casemap/struct.CaseMapper.html#method.simple_fold_turkic Rust documentation for `simple_fold_turkic`} for more information.
+ */
+ simple_fold_turkic(ch: char): char;
+}