// generated by diplomat-tool
import type { CollatorAlternateHandling } from "./CollatorAlternateHandling"
import type { CollatorCaseLevel } from "./CollatorCaseLevel"
import type { CollatorMaxVariable } from "./CollatorMaxVariable"
import type { CollatorStrength } from "./CollatorStrength"
import type { pointer, codepoint } from "./diplomat-runtime.d.ts";

export type CollatorOptions_obj = {
    strength?: CollatorStrength | null;
    alternateHandling?: CollatorAlternateHandling | null;
    maxVariable?: CollatorMaxVariable | null;
    caseLevel?: CollatorCaseLevel | null;
};



/**
 * See the [Rust documentation for `CollatorOptions`](https://docs.rs/icu/2.1.1/icu/collator/options/struct.CollatorOptions.html) for more information.
 */
export class CollatorOptions {
    get strength(): CollatorStrength | null;
    set strength(value: CollatorStrength | null);
    get alternateHandling(): CollatorAlternateHandling | null;
    set alternateHandling(value: CollatorAlternateHandling | null);
    get maxVariable(): CollatorMaxVariable | null;
    set maxVariable(value: CollatorMaxVariable | null);
    get caseLevel(): CollatorCaseLevel | null;
    set caseLevel(value: CollatorCaseLevel | null);
    /** @internal */
    static fromFields(structObj : CollatorOptions_obj) : CollatorOptions;

    /**
    * Create `CollatorOptions` from an object that contains all of `CollatorOptions`s fields.
    * Optional fields do not need to be included in the provided object.
    */
    constructor(structObj: CollatorOptions_obj);

}