djledda.de main
Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.

15 рядки
470 B

  1. export type DJAPIEndpoint = "/rp-articles";
  2. export interface DJAPIResultMap extends Record<DJAPIEndpoint, unknown> {
  3. "/rp-articles": { slug: string; title: string, tags?: string[] }[];
  4. }
  5. export type DJAPIResult = DJAPIResultMap[DJAPIEndpoint];
  6. export default async function getDJAPI<T extends DJAPIEndpoint>(
  7. hostUrl: string,
  8. endpoint: T,
  9. ): Promise<DJAPIResultMap[typeof endpoint]> {
  10. return await (await fetch(`${hostUrl}/api${endpoint}`)).json();
  11. }