import type { Faker } from "@faker-js/faker";
import { type Observable } from 'rxjs';
export declare class AddressModule {
    private readonly faker;
    private readonly placesModule;
    private readonly lastNameModule;
    private readonly streetTypes;
    private readonly historicalFigures;
    private readonly saints;
    private readonly importantDates;
    private readonly culturalReferences;
    private readonly geographicalReferences;
    constructor(faker: Faker);
    private getWeightedStreetType;
    streetName$(region?: string): Observable<string>;
    streetAddress$(options?: {
        region?: string;
    }): Observable<string>;
    completeAddress$(options?: {
        region?: string;
    }): Observable<string>;
    private buildingNumber;
    private generateApartmentDetails;
    streetName(region?: string): Promise<string>;
    streetAddress(options?: {
        region?: string;
    }): Promise<string>;
    completeAddress(options?: {
        region?: string;
    }): Promise<string>;
}
