@todo-esta-bien/numerodon
Version:
Library to calculate numeric values from names or dates
279 lines (270 loc) • 10.6 kB
TypeScript
interface ReduceNumberDigitsAttrs {
sumRecursively?: boolean;
stopNumbers?: number[];
}
type LetterSumResult = {
vowelSum: number;
consonantSum: number;
totalSum: number;
};
type NumberReducer = (number: number) => number;
declare const reduceNumberDigits: ({ sumRecursively, stopNumbers }?: ReduceNumberDigitsAttrs) => NumberReducer;
declare const getLetterValue: (letter: string) => number;
declare const cleanString: (str: string) => string;
declare const getLetterSumFromWord: (word: string, numberReducer: NumberReducer) => LetterSumResult;
declare const getLetterSumFromString: (str: string, reduceNumberAttrs?: ReduceNumberDigitsAttrs) => LetterSumResult;
declare const repeatArrayElements: <T>(originalArray: T[], elementsAmount: number) => T[];
declare const generateExpandedNames: (str: string, expansionLimit: number) => string[];
declare const generateExpandedLetterCount: (str: string[]) => number[];
declare const getDaysInMonth: (year: number, month: number) => number[];
interface ITantricProfileConstructor {
day: number;
month: number;
year: number;
}
declare class TantricProfile {
readonly day: number;
readonly month: number;
readonly year: number;
readonly soul: number;
readonly karma: number;
readonly divineGift: number;
readonly lastLife: number;
readonly path: number;
private readonly tantricSumOptions;
private readonly numberReducer;
constructor({ day, month, year }: ITantricProfileConstructor);
}
interface IPythagoreanProfileConstructor {
day: number;
month: number;
year: number;
names: string;
fatherLastNames: string;
motherLastNames: string;
}
declare class PythagoreanProfile {
readonly day: number;
readonly month: number;
readonly year: number;
readonly names: string;
readonly fatherLastNames: string;
readonly motherLastNames: string;
readonly completeName: string;
readonly completeNameSumResult: LetterSumResult;
readonly soul: number;
readonly personality: number;
readonly expression: number;
readonly cosmicMission: number;
readonly balance: number;
readonly strength: number;
readonly spiritualInitiation: number;
readonly lifePath: number;
readonly pythagoreanSumOptions: ReduceNumberDigitsAttrs;
readonly numberReducer: NumberReducer;
constructor({ day, month, year, names, fatherLastNames, motherLastNames }: IPythagoreanProfileConstructor);
private getCompleteNameInitialsSum;
}
interface IPythagoreanPinnacleConstructor {
day: number;
month: number;
year: number;
}
declare class PythagoreanPinnacle {
readonly month: number;
readonly day: number;
readonly year: number;
readonly karma: number;
readonly personal: number;
readonly pastLife: number;
readonly personality: number;
readonly firstRealization: number;
readonly secondRealization: number;
readonly thirdRealization: number;
readonly fourthRealization: number;
readonly destiny: number;
readonly subconscious: number;
readonly unconscious: number;
readonly firstGoal: number;
readonly secondGoal: number;
readonly thirdGoal: number;
readonly fourthGoal: number;
readonly negativeUnconscious: number;
readonly shadow: number;
readonly familyInferiorBeing: number;
readonly consciousInferiorBeing: number;
readonly latentInferiorBeing: number;
readonly absences: number[];
readonly triplicities: number[];
readonly firstLifeStage: number;
readonly secondLifeStage: number;
readonly thirdLifeStage: number;
private readonly pythagoreanPinnacleSumOptions;
private readonly numberReducer;
constructor({ day, month, year }: IPythagoreanPinnacleConstructor);
private calculateAbsences;
private calculateTriplicities;
}
interface IDestinyTableConstructor {
day: number;
month: number;
year: number;
names: string;
fatherLastNames: string;
motherLastNames: string;
yearExpansionLimit?: number;
}
declare class DestinyTable {
readonly day: number;
readonly month: number;
readonly year: number;
readonly names: string;
readonly fatherLastNames: string;
readonly motherLastNames: string;
readonly expandedYears: number[];
readonly expandedAge: number[];
readonly expandedMentalPlane: string[];
readonly expandedMentalPlaneLetterValues: number[];
readonly expandedMentalPlaneLetterCount: number[];
readonly expandedPhysicalPlane: string[];
readonly expandedPhysicalPlaneLetterValues: number[];
readonly expandedPhysicalPlaneLetterCount: number[];
readonly expandedEmotionalPlane: string[];
readonly expandedEmotionalPlaneLetterValues: number[];
readonly expandedEmotionalPlaneLetterCount: number[];
readonly expandedSpiritualPlane: number[];
readonly expandedDestinyNumber: number[];
readonly expandedPersonalYears: number[];
readonly expandedRealizationNumbers: string[];
readonly expandedCrisisPeriods: number[];
readonly destinyTableSumOptions: ReduceNumberDigitsAttrs;
readonly numberReducer: NumberReducer;
readonly yearExpansionLimit: number;
private readonly DEFAULT_YEAR_EXPANSION_LIMIT;
constructor({ day, month, year, names, fatherLastNames, motherLastNames, yearExpansionLimit, }: IDestinyTableConstructor);
private generateCrisisPeriods;
private generateExpandedRealizationNumbers;
}
interface IEvolutiveProfileConstructor {
day: number;
month: number;
year: number;
names: string;
fatherLastNames: string;
motherLastNames: string;
}
type EvolutiveNumbers = [number, number, number, number, number, number, number, number, number];
declare class EvolutiveProfile {
readonly day: number;
readonly month: number;
readonly year: number;
readonly names: string;
readonly fatherLastNames: string;
readonly motherLastNames: string;
readonly completeName: string;
readonly completeNameChars: number;
readonly residents: EvolutiveNumbers;
readonly personalYears: EvolutiveNumbers;
readonly evolutiveSumOptions: ReduceNumberDigitsAttrs;
readonly numberReducer: NumberReducer;
constructor({ day, month, year, names, fatherLastNames, motherLastNames }: IEvolutiveProfileConstructor);
/**
* Generates the residents (repeated times of a letter value) starting from the 1 to the 9
*
* @param {string} cleanCompleteNameWithoutSpaces - The complete name without spaces or accents
* @returns {EvolutiveNumbers} The 9 length array from values from 1 to 9 of the repeated values
*/
private getResidents;
/**
* Generates the personal years, but considering the "master numbers". This starts based on the birthYear,
* and should be matched manually with the residents.
*
* @param {number} day - The day of birth of the user
* @param {number} month - The month of birth of the user
* @param {number} year - The year of birth of the user
* @returns {EvolutiveNumbers} The 9 length array from values from 1 to 9 (may include 11 or 22),
* starting with the personal year of the user
*/
private getPersonalYears;
}
interface IBase22ProfileConstructor {
day: number;
month: number;
year: number;
}
declare class Base22Profile {
readonly day: number;
readonly month: number;
readonly year: number;
readonly deepPersonality: number;
readonly emotionalKnot: number;
readonly emotionalSearch: number;
readonly internalSocialBehavior: number;
readonly externalSocialBehavior: number;
readonly externalSocialPersonality: number;
readonly harmonySearch: number;
readonly spiritualSearch: number;
readonly resistanceNumber: number;
readonly emerge: number;
readonly painKnot: number;
readonly internalDefenseBehavior: number;
readonly externalDefenseBehavior: number;
readonly externalDefensePersonality: number;
readonly externalExitSearch: number;
readonly escapeNumber: number;
readonly firstSpiritualBaseA: number;
readonly firstSpiritualBaseB: number;
readonly firstSpiritualBaseC: number;
readonly secondSpiritualBaseA: number;
readonly secondSpiritualBaseB: number;
readonly secondSpiritualBaseC: number;
readonly thirdSpiritualBaseA: number;
readonly base22SumOptions: ReduceNumberDigitsAttrs;
readonly numberReducer: NumberReducer;
readonly reducedDay: number;
readonly reducedMonth: number;
readonly reducedYear: number;
constructor({ day, month, year }: IBase22ProfileConstructor);
private getResistanceNumber;
}
interface IDiamondProfileConstructor {
day: number;
month: number;
year: number;
}
declare class DiamondProfile extends Base22Profile {
readonly starFacet: number;
readonly radiationSource: number;
readonly reflect: number;
readonly keyResource: number;
readonly diamondSumOptions: ReduceNumberDigitsAttrs;
readonly numberReducer: NumberReducer;
constructor({ day, month, year }: IDiamondProfileConstructor);
}
interface IPlannerProfileConstructor {
day: number;
month: number;
year: number;
consultingYear: number;
consultingMonth: number;
}
type PlannerDay = {
calendarDay: number;
personalDay: number;
universalDay: number;
};
declare class PlannerProfile {
readonly consultingYear: number;
readonly consultingMonth: number;
readonly day: number;
readonly month: number;
readonly year: number;
readonly annualVibration: number;
readonly universalVibration: number;
readonly personalVibration: number;
readonly plannerDays: (PlannerDay | null)[];
readonly plannerSumOptions: ReduceNumberDigitsAttrs;
readonly numberReducer: NumberReducer;
constructor({ day, month, year, consultingYear, consultingMonth }: IPlannerProfileConstructor);
}
export { Base22Profile, DestinyTable, DiamondProfile, EvolutiveNumbers, EvolutiveProfile, IBase22ProfileConstructor, IDestinyTableConstructor, IDiamondProfileConstructor, IEvolutiveProfileConstructor, IPlannerProfileConstructor, IPythagoreanPinnacleConstructor, IPythagoreanProfileConstructor, ITantricProfileConstructor, LetterSumResult, NumberReducer, PlannerProfile, PythagoreanPinnacle, PythagoreanProfile, ReduceNumberDigitsAttrs, TantricProfile, cleanString, generateExpandedLetterCount, generateExpandedNames, getDaysInMonth, getLetterSumFromString, getLetterSumFromWord, getLetterValue, reduceNumberDigits, repeatArrayElements };