import { WithWYAlternative } from "../../helpers/with-wy-alternative.js";
import { type SlotIII } from "../slot-3/index.js";
import { type Function } from "../slot-4/index.js";
import { type AffixShortcut } from "./affix-shortcut.js";
import type { Stem } from "./stem.js";
import { type Version } from "./version.js";
export * from "./affix-shortcut.js";
export * from "./stem.js";
export * from "./version.js";
/** Information directly pertaining to Slot II. */
export type SlotII = {
    /** The stem of the formative. */
    readonly stem: Stem;
    /** The version of the formative. */
    readonly version: Version;
};
/** Additional information relevant to Slot II. */
export type SlotIIMetadata = {
    /** The codified contents of Slot I. */
    readonly slotI: string;
    /** The raw contents of Slot III. */
    readonly slotIII: SlotIII;
    /** The affix shortcut (if any) indicated by Slot II. */
    readonly affixShortcut?: AffixShortcut | undefined;
    /** Whether Slot V contains at least two affixes. */
    readonly doesSlotVHaveAtLeastTwoAffixes: boolean;
    /** The function of the formative. */
    readonly function: Function;
};
/**
 * An object mapping affix shortcuts, stems, and versions to their Ithkuilic
 * translations.
 */
export declare const SLOT_II_MAP: {
    readonly undefined: readonly [readonly ["o", "ö"], readonly ["a", "ä"], readonly ["e", "i"], readonly ["u", "ü"]];
    readonly "NEG/4": readonly [readonly ["oi", "ou"], readonly ["ai", "au"], readonly ["ei", "eu"], readonly ["ui", "iu"]];
    readonly "DCD/4": readonly [readonly [WithWYAlternative, WithWYAlternative], readonly [WithWYAlternative, WithWYAlternative], readonly [WithWYAlternative, WithWYAlternative], readonly [WithWYAlternative, WithWYAlternative]];
    readonly "DCD/5": readonly [readonly ["oe", "öe"], readonly ["ao", "aö"], readonly ["eo", "eö"], readonly ["oa", "öa"]];
};
/**
 * An object mapping stems and versions to their indices in the standard vowel
 * table when an a+Ca shortcut is used.
 */
export declare const SLOT_II_SHORTCUT_MAP: {
    readonly 1: {
        readonly PRC: 1;
        readonly CPT: 2;
    };
    readonly 2: {
        readonly PRC: 3;
        readonly CPT: 4;
    };
    readonly 3: {
        readonly PRC: 9;
        readonly CPT: 8;
    };
    readonly 0: {
        readonly PRC: 7;
        readonly CPT: 6;
    };
};
/**
 * Converts Slot II into Ithkuil.
 *
 * @param slot The stem and version of the formative.
 * @param metadata Additional information relevant to Slot II.
 * @returns Romanized Ithkuilic text representing Slot II.
 */
export declare function slotIIToIthkuil(slot: SlotII, metadata: SlotIIMetadata): string;
