taipa
Version:
Taiwanese morphological parsing library
246 lines (245 loc) • 6.45 kB
TypeScript
import { Letters, Sound, Character, MatchedSequence } from '../unit';
export declare class Morph {
}
export declare class Allomorph extends Morph {
tonal: Tonal;
toString(): string;
}
export declare class FreeAllomorph extends Allomorph {
}
export declare class CheckedAllomorph extends Allomorph {
final: Final;
toString(): string;
}
declare class Affix {
}
export declare class TonalAffix extends Affix {
tonal: Tonal;
toString(): string;
}
export declare enum TonalLetterTags {
a = "a",
e = "e",
i = "i",
o = "o",
u = "u",
ur = "ur",
c = "c",
ch = "ch",
j = "j",
s = "s",
ph = "ph",
th = "th",
kh = "kh",
m = "m",
n = "n",
ng = "ng",
nn = "nn",
f = "f",
w = "w",
x = "x",
xx = "xx",
y = "y",
z = "z",
zx = "zx",
b = "b",
g = "g",
l = "l",
k = "k",
p = "p",
t = "t",
kk = "kk",
pp = "pp",
tt = "tt",
hh = "hh",
bb = "bb",
gg = "gg",
ll = "ll",
jj = "jj",
ss = "ss",
h = "h",
zero = "zero",
ea = "ea",
er = "er",
ir = "ir",
or = "or"
}
export declare class TonalLetters extends Letters {
handleN(characters: Character[], beginOfLetter: number, listLength: number): MatchedSequence;
}
export declare const lowerLettersTonal: TonalLetters;
export declare enum TonalSpellingTags {
initialConsonant = "initialConsonant",
vowel = "vowel",
materLectionis = "materLectionis",
nasalization = "nasalization",
stopFinalConsonant = "stopFinalConsonant",
nasalFinalConsonant = "nasalFinalConsonant",
checkedTone = "checkedTone",
freeTone = "freeTone"
}
export declare class Initial extends Sound {
name: TonalSpellingTags;
}
export declare class Medial extends Sound {
name: TonalSpellingTags;
}
export declare class Final extends Sound {
name: string;
}
export declare class Nasalization extends Sound {
name: TonalSpellingTags;
}
export declare class Tonal extends Sound {
name: string;
}
export declare class FreeTonal extends Tonal {
name: TonalSpellingTags;
}
export declare class CheckedTonal extends Tonal {
name: TonalSpellingTags;
}
export declare class StopFinal extends Final {
name: TonalSpellingTags;
}
export declare class NasalFinal extends Final {
name: TonalSpellingTags;
}
export declare class MaterLectionis extends Medial {
name: TonalSpellingTags;
}
export declare class ZeroTonal extends Tonal {
characters: never[];
}
export declare class FreeTonalZ extends FreeTonal {
characters: Character[];
}
export declare class FreeTonalW extends FreeTonal {
characters: Character[];
}
export declare class FreeTonalF extends FreeTonal {
characters: Character[];
}
export declare class FreeTonalXX extends FreeTonal {
characters: Character[];
}
export declare class FreeTonalZX extends FreeTonal {
characters: Character[];
}
export declare class FreeTonalX extends FreeTonal {
characters: Character[];
}
export declare class FreeTonalY extends FreeTonal {
characters: Character[];
}
export declare class CheckedTonalW extends CheckedTonal {
characters: Character[];
}
export declare class CheckedTonalF extends CheckedTonal {
characters: Character[];
}
export declare class CheckedTonalX extends CheckedTonal {
characters: Character[];
}
export declare class CheckedTonalY extends CheckedTonal {
characters: Character[];
}
export declare class FinalP extends StopFinal {
characters: Character[];
}
export declare class FinalT extends StopFinal {
characters: Character[];
}
export declare class FinalK extends StopFinal {
characters: Character[];
}
export declare class FinalH extends StopFinal {
characters: Character[];
}
export declare class FinalPP extends StopFinal {
characters: Character[];
}
export declare class FinalTT extends StopFinal {
characters: Character[];
}
export declare class FinalKK extends StopFinal {
characters: Character[];
}
export declare class FinalHH extends StopFinal {
characters: Character[];
}
export declare const nasalizationsTonal: {
sounds: Sound[];
includes(str: string): boolean;
};
export declare const nasalFinalConsonantsTonal: {
sounds: Sound[];
includes(str: string): boolean;
};
export declare const neutralFinalConsonantsTonal: {
sounds: Sound[];
includes(str: string): boolean;
};
export declare const vowelsTonal: {
sounds: Sound[];
includes(str: string): boolean;
};
export declare const materLectionisTonal: {
sounds: Sound[];
includes(str: string): boolean;
};
export declare const initialConsonantsTonal: {
sounds: Sound[];
includes(str: string): boolean;
};
export declare const freeToneLettersTonal: {
sounds: Sound[];
includes(str: string): boolean;
};
export declare const checkedToneLettersTonal: {
sounds: Sound[];
includes(str: string): boolean;
};
export declare const finalConsonantsPtkhppttkkhhTonal: {
sounds: Sound[];
includes(str: string): boolean;
};
export declare const finalConsonantsBgjklpsTonal: {
sounds: Sound[];
includes(str: string): boolean;
};
export declare const finalConsonantsBBggkkllppssTonal: {
sounds: Sound[];
includes(str: string): boolean;
};
export declare const tonalPositionalSounds: Map<string, (s: TonalSpellingTags) => Sound>;
export declare class ZeroAllomorph extends FreeAllomorph {
tonal: ZeroTonal;
}
export declare class AllomorphZ extends FreeAllomorph {
tonal: FreeTonalZ;
}
export declare class AllomorphY extends FreeAllomorph {
tonal: FreeTonalY;
}
export declare class AllomorphW extends FreeAllomorph {
tonal: FreeTonalW;
}
export declare class AllomorphX extends FreeAllomorph {
tonal: FreeTonalX;
}
export declare const freeAllomorphs: Map<string, Allomorph>;
export declare class AllomorphH extends CheckedAllomorph {
final: FinalH;
}
export declare class AllomorphHY extends CheckedAllomorph {
final: FinalH;
tonal: CheckedTonalY;
}
export declare const checkedAllomorphs: Map<string, Allomorph>;
export declare const combinedFreeAllomorphs: Map<string, Allomorph>;
export declare const uncombinedCheckedAllomorphs: Map<string, Allomorph>;
export declare const combinedCheckedAllomorphs: Map<string, Allomorph[]>;
export declare const freeAllomorphStandaloneRules: Map<string, Tonal[]>;
export declare const standaloneRulesAy: Map<string, Tonal[]>;
export {};