export const MACRO_DATA_SERVICE = Symbol('MACRO_DATA_SERVICE');

export interface MacroDataPoint {
  province: string;
  indicator: string;
  value: number;
  unit: string;
  period: string;
  source: string;
}

export interface IMacroDataService {
  getByProvince(province: string, indicators?: string[]): Promise<MacroDataPoint[]>;
  getByIndicator(indicator: string, provinces?: string[]): Promise<MacroDataPoint[]>;
  upsert(data: Omit<MacroDataPoint, 'source'> & { source: string }): Promise<void>;
}
