import { RegistrableModel } from './registrable.js'; import { ConceptSource } from './concept-source.js'; import type { ConceptSourceJson } from './concept-source.js'; import { Pronunciation } from './pronunciation.js'; import type { PronunciationJson } from './pronunciation.js'; import { GrammarInfo } from './grammar-info.js'; import type { GrammarInfoJson } from './grammar-info.js'; import { RelatedConcept } from './related-concept.js'; import type { RelatedConceptJson } from './related-concept.js'; import { DesignationRelationship } from './designation-relationship.js'; import type { DesignationRelationshipJson } from './designation-relationship.js'; export type DesignationType = 'expression' | 'abbreviation' | 'symbol' | 'letter_symbol' | 'graphical symbol' | 'graphical_symbol' | string; export type NormativeStatus = 'preferred' | 'deprecated' | 'admitted' | 'deprecated_' | string | null; export interface DesignationJson { type?: DesignationType; designation?: string; normative_status?: NormativeStatus; normativeStatus?: NormativeStatus; absent?: boolean | null; field_of_application?: string | null; fieldOfApplication?: string | null; usage_info?: string | null; usageInfo?: string | null; geographical_area?: string | null; geographicalArea?: string | null; language?: string | null; script?: string | null; system?: string | null; international?: boolean | null; term_type?: string | null; termType?: string | null; pronunciation?: ReadonlyArray; sources?: ReadonlyArray; related?: ReadonlyArray; prefix?: string | null; grammar_info?: ReadonlyArray; acronym?: boolean; initialism?: boolean; truncation?: boolean; text?: string | null; image?: string | null; } export declare class Designation extends RegistrableModel { readonly designation: string; readonly type: DesignationType; readonly normativeStatus: NormativeStatus; readonly absent: boolean | null; readonly fieldOfApplication: string | null; readonly usageInfo: string | null; readonly geographicalArea: string | null; readonly language: string | null; readonly script: string | null; readonly system: string | null; readonly international: boolean | null; readonly termType: string | null; readonly pronunciations: ReadonlyArray; readonly sources: ReadonlyArray; readonly related: ReadonlyArray; constructor(data?: DesignationJson); toJSON(): DesignationJson; /** RDF class local-name for this designation subtype. */ rdfClass(): string; /** SKOS label predicate URI appropriate for this designation's normative status. */ skosLabelPredicate(skosNs: string): string; /** SKOS-XL label predicate URI. */ skosxlLabelPredicate(skosxlNs: string): string; protected _skosLabelLocalName(): string; static identityOf(value: { type?: string; designation?: string; } | null | undefined): string; identity(): string; static fromJSON(data: DesignationJson): Designation; } export declare class Expression extends Designation { readonly prefix: string | null; readonly grammarInfo: ReadonlyArray; constructor(data?: DesignationJson); toJSON(): DesignationJson; static fromJSON(data: DesignationJson): Expression; } export declare class Abbreviation extends Expression { readonly acronym: boolean; readonly initialism: boolean; readonly truncation: boolean; constructor(data?: DesignationJson); rdfClass(): string; toJSON(): DesignationJson; static fromJSON(data: DesignationJson): Abbreviation; } export declare class Symbol extends Designation { rdfClass(): string; static fromJSON(data: DesignationJson): Symbol; } export declare class LetterSymbol extends Symbol { readonly text: string | null; constructor(data?: DesignationJson); rdfClass(): string; toJSON(): DesignationJson; static fromJSON(data: DesignationJson): LetterSymbol; } export declare class GraphicalSymbol extends Symbol { readonly text: string | null; readonly image: string | null; constructor(data?: DesignationJson); rdfClass(): string; toJSON(): DesignationJson; static fromJSON(data: DesignationJson): GraphicalSymbol; } //# sourceMappingURL=designation.d.ts.map