import {ObjectTreesApplicationInterface} from '../../application.interface';
import {ExtensionProvider} from '../../integration/extension.provider';
import {
  LOCATABLE_ITEMS_HOLDER_TYPE,
  LOCATION_PROVIDER,
  LOCATION_REFERENCE_TYPE,
} from './location.const';
import {LocationService} from './location.service';

export class LocationProvider extends ExtensionProvider {
  constructor(protected app: ObjectTreesApplicationInterface) {
    super(LOCATION_PROVIDER, app);

    this.services.push({cls: LocationService});
    this.objectTypes.push(LOCATABLE_ITEMS_HOLDER_TYPE, LOCATION_REFERENCE_TYPE);
  }
}
