taipa
Version:
Taiwanese morphological parsing library
124 lines (123 loc) • 7.13 kB
TypeScript
import { TonalInflectionLexeme, TonalInsertionLexeme, TonalUninsertionLexeme, TonalUninfectionLexeme, TonalInfectionLexeme, TonalMutationLexeme, TonalUnmutationLexeme } from './lexeme';
import { Phraseme } from '../unit';
import { TonalPhrase } from '../unchange/unit';
import { TonalPhrasalInflectionMetaplasm, TonalPhrasalInsertionMetaplasm, TonalPhrasalUninsertionMetaplasm, TonalPhrasalUninfectionMetaplasm, TonalPhrasalInfectionMetaplasm, TonalPhrasalMutationMetaplasm, TonalPhrasalUnmutationMetaplasm, TonalPhrasalInflectionVppMetaplasm } from '../metaplasm';
/** A phrase of length 2 and its inflected forms. */
export declare class PhrasalVerbPhraseme extends Phraseme {
/** Verb + particle */
phrase: TonalPhrase;
private forms;
constructor(verb: TonalInflectionLexeme, particle: TonalInflectionLexeme, metaplasm: TonalPhrasalInflectionMetaplasm);
/** Returns proceeding forms or participle forms */
getForms(): TonalPhrase[];
}
/** A phrase of length 3 and its inflected forms. */
export declare class PhrasalVerbVppPhraseme extends Phraseme {
/** Verb + particle + particle */
phrase: TonalPhrase;
private forms;
constructor(verb: TonalInflectionLexeme, particle: TonalInflectionLexeme, particleTwo: TonalInflectionLexeme, metaplasm: TonalPhrasalInflectionVppMetaplasm);
/** Returns proceeding forms, participle forms, or transitive forms. */
getForms(): TonalPhrase[];
}
/** A compound. */
export declare class TonalCompoundPhraseme extends Phraseme {
/** Preceding word is inflected while following word is not. */
phrase: TonalPhrase;
/** Separable phrasal verb. Separate compound verb. Separable verb. Thiapwsux gifchongwguy. Tiapwsux gifsiannzguy. Adverb + verb. Prepositional verb. */
constructor(preceding: TonalInflectionLexeme, following: TonalInflectionLexeme);
}
/** A phrase and its inflected forms. */
export declare class TonalMainParticlePhraseme extends Phraseme {
/** Main word and its particle. */
phrase: TonalPhrase;
private forms;
/** E-adjective. Le form. Terminal form of possesive case. */
constructor(main: TonalInflectionLexeme, particle: TonalInflectionLexeme, metaplasm: TonalPhrasalInflectionMetaplasm);
/** Returns adnominal forms or conjunctive forms. */
getForms(): TonalPhrase[];
}
/** A phrase and its proceeding forms. */
export declare class SerialPhraseme extends Phraseme {
/** A series of words that are inflected except for the last one. */
phrase: TonalPhrase;
private forms;
/** A series of lexemes. */
constructor(lexemes: TonalInflectionLexeme[]);
/** Returna a series of inflected words. */
getForms(): TonalPhrase[];
}
export declare class TonalInflectionPhrasemeMaker {
makePhrasalVerbPhraseme(verb: TonalInflectionLexeme, particle: TonalInflectionLexeme): PhrasalVerbPhraseme;
makePhrasalVerbVppPhraseme(verb: TonalInflectionLexeme, particle: TonalInflectionLexeme, particleTwo: TonalInflectionLexeme): PhrasalVerbVppPhraseme;
makeTransitiveVppPhraseme(verb: TonalInflectionLexeme, particle: TonalInflectionLexeme, particleTwo: TonalInflectionLexeme): PhrasalVerbVppPhraseme;
makeCompoundPhraseme(preceding: TonalInflectionLexeme, following: TonalInflectionLexeme): TonalCompoundPhraseme;
makeAdjectivePhraseme(adjectivalNoun: TonalInflectionLexeme, e: TonalInflectionLexeme): TonalMainParticlePhraseme;
makeConjunctivePhraseme(verb: TonalInflectionLexeme, le: TonalInflectionLexeme): TonalMainParticlePhraseme;
makePossesivePhraseme(noun: TonalInflectionLexeme, ex: TonalInflectionLexeme): TonalMainParticlePhraseme;
makeParticiplePhraseme(verb: TonalInflectionLexeme, particle: TonalInflectionLexeme): PhrasalVerbPhraseme;
makeVppParticiplePhraseme(verb: TonalInflectionLexeme, particle: TonalInflectionLexeme, particleTwo: TonalInflectionLexeme): PhrasalVerbVppPhraseme;
makeSerialPhraseme(lexemes: TonalInflectionLexeme[]): SerialPhraseme;
}
export declare class TonalInsertionPhraseme implements Phraseme {
phrase: TonalPhrase;
private forms;
constructor(preceding: TonalInsertionLexeme, following: TonalInsertionLexeme, metaplasm: TonalPhrasalInsertionMetaplasm);
/** Returns inserted forms. */
getForms(): TonalPhrase[];
}
export declare class TonalInsertionPhrasemeMaker {
makePhraseme(preceding: TonalInsertionLexeme, following: TonalInsertionLexeme, metaplasm: TonalPhrasalInsertionMetaplasm): TonalInsertionPhraseme;
}
export declare class TonalUninsertionPhraseme implements Phraseme {
phrase: TonalPhrase;
private forms;
constructor(preceding: TonalUninsertionLexeme, following: TonalUninsertionLexeme, metaplasm: TonalPhrasalUninsertionMetaplasm);
/** Returns uninserted forms. */
getForms(): TonalPhrase[];
}
export declare class TonalUninsertionPhrasemeMaker {
makePhraseme(preceding: TonalUninsertionLexeme, following: TonalUninsertionLexeme, metaplasm: TonalPhrasalUninsertionMetaplasm): TonalUninsertionPhraseme;
}
export declare class TonalInfectionPhraseme implements Phraseme {
phrase: TonalPhrase;
private forms;
constructor(preceding: TonalInfectionLexeme, following: TonalInfectionLexeme, metaplasm: TonalPhrasalInfectionMetaplasm);
/** Returns infected forms. */
getForms(): TonalPhrase[];
}
export declare class TonalInfectionPhrasemeMaker {
makePhraseme(preceding: TonalInfectionLexeme, following: TonalInfectionLexeme, metaplasm: TonalPhrasalInfectionMetaplasm): TonalInfectionPhraseme;
}
export declare class TonalUninfectionPhraseme implements Phraseme {
phrase: TonalPhrase;
private forms;
constructor(preceding: TonalUninfectionLexeme, following: TonalUninfectionLexeme, metaplasm: TonalPhrasalUninfectionMetaplasm);
/** Returns uninfected forms. */
getForms(): TonalPhrase[];
}
export declare class TonalUninfectionPhrasemeMaker {
makePhraseme(preceding: TonalUninfectionLexeme, following: TonalUninfectionLexeme, metaplasm: TonalPhrasalUninfectionMetaplasm): TonalUninfectionPhraseme;
}
/** A phrase and its mutated form. */
export declare class TonalMutationPhraseme implements Phraseme {
phrase: TonalPhrase;
private forms;
constructor(preceding: TonalMutationLexeme, following: TonalMutationLexeme, metaplasm: TonalPhrasalMutationMetaplasm);
/** Returns mutated forms. */
getForms(): TonalPhrase[];
}
export declare class TonalMutationPhrasemeMaker {
makePhraseme(preceding: TonalMutationLexeme, following: TonalMutationLexeme, metaplasm: TonalPhrasalMutationMetaplasm): TonalMutationPhraseme;
}
/** A phrase and its unmutated form. */
export declare class TonalUnmutationPhraseme implements Phraseme {
phrase: TonalPhrase;
private forms;
constructor(preceding: TonalUnmutationLexeme, following: TonalUnmutationLexeme, metaplasm: TonalPhrasalUnmutationMetaplasm);
/** Returns unmutated forms. */
getForms(): TonalPhrase[];
}
export declare class TonalUnmutationPhrasemeMaker {
makePhraseme(preceding: TonalUnmutationLexeme, following: TonalUnmutationLexeme, metaplasm: TonalPhrasalUnmutationMetaplasm): TonalUnmutationPhraseme;
}