29 lines
729 B
TypeScript
29 lines
729 B
TypeScript
|
/**
|
||
|
* This entity is the main tag entity.
|
||
|
* Tags have a name and a description.
|
||
|
* They can tag a work, a character, or a character interaction.
|
||
|
* They can also be in a hierarchy
|
||
|
*/
|
||
|
interface TagInterface
|
||
|
extends IdentifiableInterface,
|
||
|
MultiNamedInterface,
|
||
|
DescribableInterface,
|
||
|
HierarchicalInterface<TagInterface> {
|
||
|
names: Promise<TagNameInterface[]> | Identifier[];
|
||
|
|
||
|
/**
|
||
|
* this tag tagging a work
|
||
|
*/
|
||
|
workTags: Promise<WorkTagInterface[]> | Identifier[];
|
||
|
|
||
|
/**
|
||
|
* this tag tagging characters
|
||
|
*/
|
||
|
characterTags: Promise<CharacterTagInterface[]> | Identifier[];
|
||
|
|
||
|
/**
|
||
|
* this tag tagging a character interaction
|
||
|
*/
|
||
|
interactionTags: Promise<InteractionTagInterface[]> | Identifier[];
|
||
|
}
|