// Generated by dts-bundle-generator v9.5.1

export declare const SIGNS: {
	readonly ARIES: "aries";
	readonly TAURUS: "taurus";
	readonly GEMINI: "gemini";
	readonly CANCER: "cancer";
	readonly LEO: "leo";
	readonly VIRGO: "virgo";
	readonly LIBRA: "libra";
	readonly SCORPIO: "scorpio";
	readonly SAGITTARIUS: "sagittarius";
	readonly CAPRICORN: "capricorn";
	readonly AQUARIUS: "aquarius";
	readonly PISCES: "pisces";
};
export declare const PLANETS: {
	readonly MARS: "mars";
	readonly VENUS: "venus";
	readonly MERCURY: "mercury";
	readonly MOON: "moon";
	readonly SUN: "sun";
	readonly PLUTO: "pluto";
	readonly JUPITER: "jupiter";
	readonly SATURN: "saturn";
	readonly URANUS: "uranus";
	readonly NEPTUNE: "neptune";
};
export declare const MODALITIES: {
	readonly CARDINAL: "cardinal";
	readonly FIXED: "fixed";
	readonly MUTABLE: "mutable";
};
export declare const ELEMENTS: {
	readonly FIRE: "fire";
	readonly EARTH: "earth";
	readonly AIR: "air";
	readonly WATER: "water";
};
declare const POLARITIES: {
	readonly POSITIVE: "positive";
	readonly NEGATIVE: "negative";
};
declare const BODY_PARTS: {
	readonly HEAD: "head";
	readonly THROAT: "throat";
	readonly LUNGS: "lungs";
	readonly STOMACH: "stomach";
	readonly HEART: "heart";
	readonly BOWELS: "bowels";
	readonly REINS: "reins";
	readonly SECRETS: "secrets";
	readonly THIGHS: "thighs";
	readonly KNEES: "knees";
	readonly ANKLES: "ankles";
	readonly FEET: "feet";
};
declare const CHARACTERS: {
	readonly RAM: "ram";
	readonly BULL: "bull";
	readonly TWINS: "twins";
	readonly CRAB: "crab";
	readonly LION: "lion";
	readonly VIRGIN: "virgin";
	readonly BALANCE: "balance";
	readonly SCORPION: "scorpion";
	readonly ARCHER: "archer";
	readonly GOAT: "goat";
	readonly THE_MAN: "the-man";
	readonly THE_FISHES: "the-fishes";
};
declare const SEASONS: {
	readonly SPRING: "spring";
	readonly SUMMER: "summer";
	readonly AUTUMN: "autumn";
	readonly WINTER: "winter";
};
declare const HOUSES: readonly [
	"house1",
	"house2",
	"house3",
	"house4",
	"house5",
	"house6",
	"house7",
	"house8",
	"house9",
	"house10",
	"house11",
	"house12"
];
declare const HOUSE_TITLES: readonly [
	"houseTitle1",
	"houseTitle2",
	"houseTitle3",
	"houseTitle4",
	"houseTitle5",
	"houseTitle6",
	"houseTitle7",
	"houseTitle8",
	"houseTitle9",
	"houseTitle10",
	"houseTitle11",
	"houseTitle12"
];
declare const HOUSE_KEYWORDS: readonly [
	"houseKeywords1",
	"houseKeywords2",
	"houseKeywords3",
	"houseKeywords4",
	"houseKeywords5",
	"houseKeywords6",
	"houseKeywords7",
	"houseKeywords8",
	"houseKeywords9",
	"houseKeywords10",
	"houseKeywords11",
	"houseKeywords12"
];
export declare const HEMISPHERES: {
	readonly LOWER: "lower";
	readonly UPPER: "upper";
};
export declare const HOUSE_MODALITIES: {
	readonly ANGULAR: "angular";
	readonly SUCCEDENT: "succedent";
	readonly CADENT: "cadent";
};
declare const PLANET_TYPE: {
	readonly LUMINARY: "luminary";
	readonly PERSONAL: "personal";
	readonly SOCIAL: "social";
	readonly TRANSPERSONAL: "transpersonal";
	readonly OTHER: "other";
};
export declare const ASPECTS: {
	readonly CONJUNCTION: "conjunction";
	readonly SEMISEXTILE: "semisextile";
	readonly SEXTILE: "sextile";
	readonly QUADRATURE: "quadrature";
	readonly TRIGONE: "trigone";
	readonly QUINCUNX: "quincunx";
	readonly OPPOSITION: "opposition";
};
declare const dictionaries: {
	en: Dictionary;
	es: Dictionary;
	ca: Dictionary;
};
export type Language = keyof typeof dictionaries;
export type ObjectValues<T> = T[keyof T];
export type Signs = ObjectValues<typeof SIGNS>;
export type Elements = ObjectValues<typeof ELEMENTS>;
export type Modalities = ObjectValues<typeof MODALITIES>;
export type Planets = ObjectValues<typeof PLANETS>;
export type Polarities = ObjectValues<typeof POLARITIES>;
export type BodyParts = ObjectValues<typeof BODY_PARTS>;
export type Characters = ObjectValues<typeof CHARACTERS>;
export type Seasons = ObjectValues<typeof SEASONS>;
export type Hemispheres = ObjectValues<typeof HEMISPHERES>;
export type HouseModalities = ObjectValues<typeof HOUSE_MODALITIES>;
export type PlanetType = ObjectValues<typeof PLANET_TYPE>;
export type Aspects = ObjectValues<typeof ASPECTS>;
export type HouseTitles = (typeof HOUSE_TITLES)[number];
export type HouseKeywords = (typeof HOUSE_KEYWORDS)[number];
export type Houses = (typeof HOUSES)[number];
export type Symbols = Signs | Planets | Aspects | "ascendant";
export interface Sign {
	/**
	 * The body part associated with the zodiac sign.
	 * Indicates the areas of the body influenced by the sign.
	 * Examples: "Head" for Aries, "Throat" for Taurus.
	 */
	bodyPart: string;
	/**
	 * The character associated with the zodiac sign.
	 * A visual representation or icon associated with the sign.
	 * Examples: "The Ram" for Aries, "The Bull" for Taurus.
	 */
	character: string;
	/**
	 * The element associated with the zodiac sign.
	 * Represents one of the four classical elements: Fire, Earth, Air, Water.
	 * Also known as triplicities in astrology.
	 * Examples: "Fire" for Aries, "Earth" for Taurus.
	 */
	element: Elements;
	/**
	 * The end date of the zodiac sign period.
	 * This date marks the end of the zodiac sign's influence for the given year.
	 * Examples: new Date(2020, 3, 20) for Aries (April 20, 2020), new Date(2020, 4, 21) for Taurus (May 21, 2020).
	 */
	endDate: Date;
	/**
	 * The glyph representing the zodiac sign.
	 * A symbolic character or drawing associated with the sign.
	 * Examples: "♈" for Aries, "♉" for Taurus.
	 */
	glyph: string;
	/**
	 * The modality of the sign.
	 * Indicates its mode of operation: Cardinal, Fixed, or Mutable.
	 * Examples: "Cardinal" for Aries, "Fixed" for Taurus.
	 */
	modality: string;
	/**
	 * The name of the zodiac sign.
	 * Examples: "Aries", "Taurus".
	 */
	name: string;
	/**
	 * The number associated with the zodiac sign.
	 * Reflects its order in the zodiac cycle.
	 * Examples: 1 for Aries (the first sign), 2 for Taurus (the second sign).
	 */
	number: number;
	/**
	 * The polarity of the sign.
	 * Indicates its active (Positive) or passive (Negative) nature.
	 * Examples: "Positive" for Aries, "Negative" for Taurus.
	 */
	pole: string;
	/**
	 * The ruling planet of the zodiac sign.
	 * Represents the guiding celestial body influencing the sign.
	 * Examples: "Mars" for Aries, "Venus" for Taurus.
	 */
	rulingPlanet: string;
	/**
	 * The season in which the zodiac sign occurs.
	 * Indicates the time of year the sign predominates.
	 * Examples: "Spring" for Aries, "Spring" for Taurus.
	 */
	season: string;
	/**
	 * The start date of the zodiac sign period.
	 * This date marks the beginning of the zodiac sign's influence for the given year.
	 * Examples: new Date(2020, 2, 20) for Aries (March 20, 2020), new Date(2020, 3, 21) for Taurus (April 21, 2020).
	 */
	startDate: Date;
}
export interface House {
	/**
	 * Element associated with the house’s natural zodiac sign.
	 *
	 * Represents one of the four classical elements — Fire, Earth, Air, or Water — reflecting the essential nature and mode of expression of the house.
	 *
	 * Example: "Fire" for House 1 (Aries), "Earth" for House 2 (Taurus)
	 */
	element: Elements;
	/**
	 * Hemisphere division based on the horizon line.
	 *
	 * - **Lower/Northern Hemisphere (Houses 1–6):** Known as the *Personal Houses*, these focus on individual development, personal identity, and foundational life needs.
	 * - **Upper/Southern Hemisphere (Houses 7–12):** Known as the *Collective Houses*, these reflect relationships with others, society, and broader humanity.
	 */
	hemisphere: Hemispheres;
	/**
	 * Key themes and associated concepts.
	 *
	 * Represents the core ideas or psychological themes governed by the house.
	 * Example: ['Self-image', 'Identity', 'Impressions on others', 'Personality']
	 */
	keywords: string[] | string;
	/**
	 * Number of the astrological house (1–12).
	 *
	 * Each house corresponds to a specific domain of life experience.
	 * Example: 1 = Self and identity, 7 = Partnerships and relating.
	 */
	number: number;
	/**
	 * Developmental phase grouping.
	 *
	 * - **Phase I (Houses 1–4):** Focus on self-awareness and personal foundation — the “me-in-here”.
	 * - **Phase II (Houses 5–8):** Development of the autonomous self in relationship — the “me” meets the “you”.
	 * - **Phase III (Houses 9–12):** Expansion of self toward collective consciousness and universal understanding.
	 */
	phase: 1 | 2 | 3;
	/**
	 * Quadrant of the chart based on the intersection of horizon and meridian axes.
	 *
	 * - **Quadrant I (Houses 1–3):** Formation of personal identity through the body, possessions, and environment.
	 * - **Quadrant II (Houses 4–6):** Further development of self via family, creativity, and refinement of skills.
	 * - **Quadrant III (Houses 7–9):** Expansion through relationships, transformation, and new vision of self.
	 * - **Quadrant IV (Houses 10–12):** Integration into society and pursuit of collective and spiritual purpose.
	 */
	quadrant: 1 | 2 | 3 | 4;
	/**
	 * Ruling planet of the house.
	 *
	 * Indicates the primary planetary influence over the house’s themes.
	 * Example: "Mars", "Venus"
	 */
	rulingPlanet: string;
	/**
	 * Zodiac sign associated with the house.
	 *
	 * Reflects the natural energy or archetype that aligns with the house.
	 * Example: "Aries", "Taurus"
	 */
	sign: string;
	/**
	 * Title or name of the house.
	 *
	 * A formal or descriptive label that captures the house’s core function or domain.
	 * Example: "The Individual Personality", "Values and Possessions"
	 */
	title: string;
	/**
	 * Modalities of the houses (Angular, Succedent, Cadent).
	 *
	 * Traditional classification describing the house’s dynamic strength and function:
	 * - **Angular (Houses 1, 4, 7, 10):** Active, initiating, most powerful.
	 * - **Succedent (Houses 2, 5, 8, 11):** Stabilizing, sustaining what was initiated.
	 * - **Cadent (Houses 3, 6, 9, 12):** Transitional, preparatory, often more internal or mental.
	 */
	modality: HouseModalities;
	/**
	 * The name of the astrological house.
	 * Refers to its designated number in the zodiac cycle, such as "First House", "Second House", etc.
	 * Examples: "First House", "Second House", "Third House", ... "Twelfth House".
	 */
	name: Houses;
}
export interface Planet {
	/**
	 * The name of the celestial body.
	 * Examples: "Sun", "Moon".
	 */
	name: string;
	/**
	 * The glyph or symbol associated with the celestial body.
	 * Examples: "☉" for the Sun, "☽" for the Moon, "♂" for Mars.
	 */
	glyph: string;
	/**
	 * The type or category of the celestial body.
	 * Examples: "Personal", "Luminary".
	 */
	type: PlanetType;
}
export type Dictionary = {
	[key in Signs | Elements | Modalities | Planets | Polarities | BodyParts | Characters | Seasons | Hemispheres | HouseModalities | PlanetType | Houses | HouseTitles | HouseKeywords]: string;
};
export type SymbolOptions = {
	width?: number | string;
	height?: number | string;
	stroke?: string;
	strokeWidth?: number | string;
};
/**
 * Get all astrological houses with their translations for a specified language.
 *
 * @param {Language} [language='en'] - The language code for which translations are needed. Defaults to 'en'.
 * @returns {House[]} An array of House objects with translated values based on the specified language.
 *
 * @example
 * import { getHouses } from 'western-houses';
 *
 * // Retrieve information about all houses in English
 * const data = getHouses();
 * console.log(data);
 * // Output:
 * // [
 * //  {
 * //     number: 1,
 * //     title: 'The individual personality',
 * //     sign: 'Aries',
 * //     rulingPlanet: 'Mars',
 * //     keywords: [
 * //       'Self-image',
 * //       'Identity',
 * //       'Impressions on others',
 * //       'Personality'
 * //     ]
 * //   },
 * //  ...
 * // ]
 */
export declare function getHouses(language?: Language): House[];
/**
 * Get a single planet with its translated properties for a specified language.
 *
 * @param {Planets} planetKey - The key corresponding to the desired planet.
 * @param {Language} [language='en'] - The language code to use for translations. Defaults to 'en'.
 * @returns {Planet | null} An object with translated values based on the specified language, or null  if the planet key is invalid.
 *
 * @example
 * import { getPlanet, PLANETS } from 'western-signs';
 *
 * // Retrieve information about Mars in English
 * const mars = getPlanet(PLANETS.MARS);
 * console.log(mars);
 * // Output:
 * // {
 * //   name: 'Mars',
 * //   glyph: '♂',
 * //   type: 'Personal'
 * // }
 */
export declare function getPlanet(planetKey: Planets, language?: Language): Planet | null;
/**
 * Get all planets with their translated properties for a specified language.
 *
 * @param {Language} [language='en'] - The language code for which translations are needed. Defaults to `'en'`.
 * @returns {Planet[]} An array of Planet objects with translated values based on the specified language.
 *
 * @example
 * import { getPlanets } from 'western-signs';
 *
 * // Retrieve information about all planets in English
 * const data = getPlanets();
 * console.log(data);
 * // Output:
 * // [
 * //   {
 * //     name: 'Mercury',
 * //     glyph: '☿',
 * //     type: 'Personal'
 * //   },
 * //   {
 * //     name: 'Venus',
 * //     glyph: '♀',
 * //     type: 'Personal'
 * //   },
 * //   ...
 * // ]
 */
export declare function getPlanets(language?: Language): Planet[];
/**
 * Retrieve the astrological sign corresponding to a given date, with optional translations for the specified language.
 *
 * @param {Date} date - The date for which the corresponding astrological sign is to be retrieved.
 * @param {Language} [language='en'] - The language code for which translations are needed. Defaults to 'en'.
 * @throws {Error} Will throw an error if the provided date is invalid.
 * @returns {Sign | null} An object representing the astrological sign with translated values or null if the sign is not found.
 *
 * @example
 * import { getSignByDate } from 'western-signs';
 *
 * // Retrieve the sign for May 15 in English
 * const signData = getSignByDate(new Date(1813, 4, 5));
 * console.log(signData);
 * // Output:
 * // {
 * //   name: 'Taurus',
 * //   element: 'Earth',
 * //   modality: 'Fixed',
 * //   rulingPlanet: 'Venus',
 * //   symbol: '♉',
 * //   [...]
 * // }
 */
export declare function getSignByDate(date: Date, language?: Language): Sign | null;
/**
 * Get the astrological sign by its name with translations for the specified language.
 *
 * @param {Signs} signKey - The name of the astrological sign to retrieve.
 * @param {Language} [language='en'] - The language code for which translations are needed. Defaults to 'en'.
 * @returns {Sign | null} An object representing the sign with translated values or null if the sign or dictionary is not found.
 *
 * @example
 * import { getSignByName, SIGNS } from 'western-signs';
 *
 * // Retrieve information about Taurus in English
 * const taurusData = getSignByName(SIGNS.TAURUS);
 * console.log(taurusData);
 * // Output:
 * // {
 * //   name: 'Taurus',
 * //   element: 'Earth',
 * //   modality: 'Fixed',
 * //   rulingPlanet: 'Venus',
 * //   symbol: '♉'
 * //   [...]
 * // }
 */
export declare function getSignByName(signKey: Signs, language?: Language): Sign | null;
/**

 * Get all astrological signs with their translations for a specified language.
 *
 * @param {Language} [language='en']  - The language code for which translations are needed. Defaults to 'en'.
 * @returns {Sign[]} An array of Sign objects with translated values based on the specified language.
 *
 * @example
 * import { getSigns } from 'western-signs';
 *
 * // Retrieve information about all signs in English
 * const data = getSigns();
 * console.log(data);
 * // Output:
 * // [
 * //  {
 * //    name: 'Aries',
 * //    element: 'Air',
 * //    modality: 'Cardinal',
 * //    rulingPlanet: 'Mars',
 * //    symbol: '♈'
 * //  },
 * //  {
 * //    name: 'Taurus',
 * //    element: 'Earth',
 * //    modality: 'Fixed',
 * //    rulingPlanet: 'Venus',
 * //    symbol: '♉'
 * //  },
 * //  ...
 * // ]
 */
export declare function getSigns(language?: Language): Sign[];
/**
 * Gets an SVG as a string or as a Data URL, with option to modify attributes.
 *
 * @param {Symbols} symbolName Name of the icon without extension .svg
 * @param {SymbolOptions} options Options to modify attributes or return as a Data URL
 * @returns SVG as string or Data URL
 *
 * @example
 * import { getSymbol } from 'western-signs'
 *
 * // Get the symbol with initial options
 * const initialSymbol = getSymbol('taurus', { stroke: 'blue', strokeWidth: 2 })
 * // Modify attributes using method chaining
 * const modifiedSymbol = initialSymbol.setStroke('green').setStrokeWidth(3)
 *
 * // Log the modified SVG as a string
 * console.log(symbol.toString())
 *
 * // Log the modified SVG as a Data URL
 * console.log(symbol.toDataURL())
 *
 * @throws Will throw an error if the specified SVG file is not found
 */
export declare function getSymbol(symbolName: Symbols, options?: SymbolOptions): {
	setStroke: (stroke: string) => any;
	setStrokeWidth: (strokeWidth: number | string) => any;
	setWidth: (width: number | string) => any;
	setHeight: (height: number | string) => any;
	toString: () => string;
	toDataURL: () => string;
};
declare function setLanguage(language: Language): void;
declare function getLanguage(): Language;
declare function t(strings: TemplateStringsArray, ...values: string[]): string;

declare namespace i18n {
	export { getLanguage, setLanguage, t };
}

export {
	i18n,
};

export {};
