import { mockCosts, mockTraffic } from './mock' import { mockOn, mocked, request } from './request' import type { CostItem, InstanceTraffic } from '@/types/api' export function getInstanceTraffic( cfgId: number, instanceId: string, days = 30, region?: string, ): Promise { if (mockOn) return mocked(mockTraffic, 800) return request(`/oci-configs/${cfgId}/instances/${encodeURIComponent(instanceId)}/traffic`, { query: { days, region }, }) } export interface CostQuery { startTime?: string endTime?: string granularity?: 'HOURLY' | 'DAILY' | 'MONTHLY' queryType?: 'COST' | 'USAGE' groupBy?: 'service' | 'skuName' | 'region' | 'compartmentName' | 'service,skuName' } export function getCosts(cfgId: number, query: CostQuery = {}): Promise { if (mockOn) return mocked(mockCosts) return request(`/oci-configs/${cfgId}/costs`, { query: { ...query } }) }