UNPKG

aurinn-train-content-generator

Version:

A custom fork of the fantasy-name-content-generator specifically for Aurinn Train, a custom D&D campaign format.

184 lines (183 loc) 5 kB
export declare const races: string[]; export declare type IRace = typeof races[number]; export declare const classes: string[]; export declare type IClass = typeof classes[number]; export declare const backgrounds: string[]; export declare type IPCBackground = typeof backgrounds[number]; export declare const abilities: string[]; export declare type Ability = typeof abilities[number]; export declare const skills: string[]; export declare type ISkill = typeof skills[number]; export declare const morality: string[]; export declare type IMorality = typeof morality[number]; export declare const adherence: string[]; export declare type IAdherence = typeof adherence[number]; export declare type IPersonalityTrait = string; export declare type IIdeal = string; export declare type IBond = string; export declare type IFlaw = string; export declare type IEstablishmentType = "general_store" | "stable" | "inn" | "tavern" | "armoursmith" | "weaponsmith" | "carpenter" | "leatherworker" | "tanner" | "cobbler" | "bakery"; export declare type IGender = "male" | "female"; export declare type ISeed = string | number; export interface IBackgroundData { "name": string; "description": string; "skill proficiencies"?: string[]; "tool proficiencies"?: string[]; "languages": string[]; "equipment": string[]; "additional rolls"?: any; "feature": { "name": string; "description": string; }; "characteristics": string; "personality traits": string[]; "ideals": any; "bonds": string[]; "flaws": string[]; } export interface INameGenerateProps { race?: IRace; gender?: IGender; cls?: IClass; seed?: ISeed; } export interface IIdealGenerateProps { background: IPCBackground; morality?: IMorality; adherence?: IAdherence; seed?: ISeed; } export interface INameDomainObject { seed: string; name: string; race: IRace; gender: IGender; firstName: string; lastName: string; formattedData: { name: string; race: string; gender: string; firstName: string; lastName: string; }; } export interface INPCGenerateProps { race?: IRace; gender?: IGender; seed?: ISeed; shouldGenerateRelations?: boolean; } export interface INPCRelationObject { relationTitle: string; npc: INameDomainObject; } export interface INPCDomainObject { seed: ISeed; nameObject: INameDomainObject; gender: IGender; race: IRace; traits: string[]; desires: string[]; formattedData: { name: string; firstName: string; lastName: string; gender: string; race: string; traits: string[]; desires: string[]; relations: INPCRelationObject[]; vocation?: string; }; relations: INPCRelationObject[]; vocation?: string; } export interface ISettlementGenerateProps { type?: string; seed?: ISeed; } export interface ISettlementDomainObject { seed: ISeed; type: string; population: string; } export interface IStoryhookGenerateProps { seed?: ISeed; storyhookBank?: eStoryhookBanks; } export declare enum eStoryhookBanks { NPC_ACTS = "NPC_ACTS", PC_RELATED = "PC_RELATED", LOCATION_BASED_URBAN = "LOCATION_BASED_URBAN", LOCATION_BASED_WILDERNESS = "LOCATION_BASED_WILDERNESS" } export interface IStoryhookDomainObject { seed: ISeed; storyhook: string; storyhookBank: eStoryhookBanks; } export interface IMagicItemGenerateProps { seed?: ISeed; type?: string; powerLevel?: string; schoolOfMagic?: string; effects?: string[]; subtype?: string; } export interface IMagicItemDomainObject { type: string; subtype: string; powerLevel: string; schoolOfMagic: string; effects: string[]; formattedData: { title: any; owner: any; tagline: any; }; } export interface ILootGenerateProps { source?: string; seed?: string; quantity?: number; } export interface ILootDomainObject { seed: string; source: string; lootItems: string[]; quantity: number; formattedData: { lootItems: string[]; quantity: number; label: string; }; } export interface IEstablishmentGenerateProps { seed?: ISeed; type?: IEstablishmentType; } export interface IEstablishmentDomainObject { seed: ISeed; type: string; name: string; npcs: INPCDomainObject[]; secret: string; formattedData: { name: string; type: string; secret: string; npcs: INPCDomainObject[]; }; } export interface IMonsterGenerateProps { type?: string; seed?: ISeed; } export interface IMonsterDomainObject { seed: ISeed; type: string; formattedDescription: string; }