import { Entity, CompoundEntityRef } from '@backstage/catalog-model';
import { Location } from '@backstage/catalog-client';
import { CatalogProcessingOrchestrator } from '../processing/types';
import { LocationInput, LocationService, LocationStore } from './types';
export type DefaultLocationServiceOptions = {
    allowedLocationTypes: string[];
};
export declare class DefaultLocationService implements LocationService {
    private readonly store;
    private readonly orchestrator;
    private readonly options;
    constructor(store: LocationStore, orchestrator: CatalogProcessingOrchestrator, options?: DefaultLocationServiceOptions);
    createLocation(input: LocationInput, dryRun: boolean): Promise<{
        location: Location;
        entities: Entity[];
        exists?: boolean;
    }>;
    listLocations(): Promise<Location[]>;
    getLocation(id: string): Promise<Location>;
    deleteLocation(id: string): Promise<void>;
    getLocationByEntity(entityRef: CompoundEntityRef | string): Promise<Location>;
    private processEntities;
    private dryRunCreateLocation;
}
