export type GetApiMacroEconomicSeriesKeyDataArgs = {key: string, from?: string | undefined, to?: string | undefined, latest?: number | undefined, includeMissing?: boolean | undefined}; export type GetApiMacroEconomicSeriesKeyDataOptions = {baseUrl?: string | undefined, oauth2?: string | undefined, fetch?: typeof fetch | undefined}; /** * Quan sát hiện hành của một chuỗi (bản công bố mới nhất của mỗi kỳ), kỳ tăng dần, kèm metadata chuỗi * * GET /macro-economic/series/{key}/data */ export const getApiMacroEconomicSeriesKeyData = async (args: GetApiMacroEconomicSeriesKeyDataArgs, options?: GetApiMacroEconomicSeriesKeyDataOptions) => { const {baseUrl = "https://api.fireant.vn", fetch: fetchFn = fetch, oauth2} = options ?? {} const query = new URLSearchParams() const headers = new Headers() if (args.from != null) query.append("from", String(args.from)) if (args.to != null) query.append("to", String(args.to)) if (args.latest != null) query.append("latest", String(args.latest)) if (args.includeMissing != null) query.append("includeMissing", String(args.includeMissing)) if (oauth2 !== undefined) headers.set('authorization', `Bearer ${oauth2}`) const url = `${baseUrl.replace(/\/+$/, '')}/macro-economic/series/${encodeURIComponent(String(args.key))}/data${query.size > 0 ? `?${query}` : ''}` const res = await fetchFn(url, {method: "GET", headers}) if (!res.ok) throw new Error(`Request failed with status ${res.status}`, {cause: {status: res.status, body: await res.text()}}) return undefined };