@nrweb/astro-calc
Version:
Comprehensive astrological calculations using Swiss Ephemeris and astronomy-engine for positions, aspects, houses, lots, and scoring metrics
126 lines • 3.2 kB
TypeScript
export type Dignity = "Rulership" | "Exaltation" | "Detriment" | "Fall" | "None";
export type Sect = "Diurnal" | "Nocturnal" | "Neutral";
export type PlanetaryMotion = "direct" | "retrograde" | "stationary";
export interface RetrogradePeriod {
startDate: string;
endDate: string;
}
export interface RetrogradeCalendar {
[planet: string]: RetrogradePeriod[];
}
export interface RetrogradeInfo {
motion: "direct" | "retrograde";
nextRetrograde?: string;
}
export type ZodiacSign = "Aries" | "Taurus" | "Gemini" | "Cancer" | "Leo" | "Virgo" | "Libra" | "Scorpio" | "Sagittarius" | "Capricorn" | "Aquarius" | "Pisces";
export interface PlanetPosition {
name: string;
position: number;
sign: string;
degrees: number;
dignity: string;
sect: string;
planetaryMotion: "direct" | "retrograde" | "stationary";
speed: number;
decanRuler: string;
boundRuler: string;
slowOfMotion?: boolean;
isMorningStar?: boolean;
retrogradeEnds?: string;
nextRetrograde?: string;
solarInfluence?: "cazimi" | "chariot" | "combust" | "none";
aspects: Aspect[];
}
export interface House {
number: number;
startSign: string;
startDegrees: number;
endSign: string;
endDegrees: number;
bodies: PlanetPosition[];
}
export interface AstrologicalPositions {
date: string;
location: {
latitude: number;
longitude: number;
};
positions: PlanetPosition[];
houses: House[];
aspects: Aspect[];
isDayChart: boolean;
sunrise: string;
sunset: string;
}
export interface Aspect {
planets: {
left: string;
right: string;
};
type: "conjunction" | "sextile" | "square" | "trine" | "opposition";
deviation: number;
grade: "perfect" | "joining" | "assembly";
direction?: "applying" | "separating";
}
export interface AstrologicalData {
positions: PlanetPosition[];
houses: House[];
isDayChart: boolean;
sunrise: string;
sunset: string;
aspects: Aspect[];
}
export interface Dignities {
[key: string]: {
rulership: string | string[];
exaltation: string;
detriment: string | string[];
fall: string;
};
}
export interface Lot {
name: string;
position: number;
sign: string;
degrees: number;
decanRuler: string;
boundRuler: string;
house: number;
aspects: Aspect[];
}
export interface HourRuler {
ruler: string;
startTime: string;
endTime: string;
length: string;
}
export interface PlanetaryHours {
[date: string]: HourRuler[];
}
export interface Chart {
date: string;
location: {
latitude: number;
longitude: number;
};
positions: PlanetPosition[];
houses: House[];
lots: Lot[];
challenges: string[];
planetaryHours: PlanetaryHours;
isDayChart: boolean;
sunrise: string;
sunset: string;
moonPhase: {
phase: string;
illumination: string;
age: number;
};
romanceScore: number;
careerScore: number;
wealthScore: number;
magicScore: number;
friendshipScore: number;
healthScore: number;
}
//# sourceMappingURL=types.d.ts.map