I want to have some data from API file with types define to them and return the data Typescript and reactjs

Viewed 22

Help me to set the types of this api not for all data only for somedata i think we need to chnage this Promise in return

This is a Api Response

[{id: 1, name: "Buzz", tagline: "A Real Bitter Experience.", first_brewed: "09/2007",…},…] 0: {id: 1, name: "Buzz", tagline: "A Real Bitter Experience.", first_brewed: "09/2007",…} 1: {id: 2, name: "Trashy Blonde", tagline: "You Know You Shouldn't", first_brewed: "04/2008",…} 2: {id: 3, name: "Berliner Weisse With Yuzu - B-Sides", tagline: "Japanese Citrus Berliner Weisse.",…} 3: {id: 4, name: "Pilsen Lager", tagline: "Unleash the Yeast Series.", first_brewed: "09/2013",…} 4: {id: 5, name: "Avery Brown Dredge", tagline: "Bloggers' Imperial Pilsner.", first_brewed: "02/2011",…} 5: {id: 6, name: "Electric India", tagline: "Vibrant Hoppy Saison.", first_brewed: "05/2013",…} 6: {id: 7, name: "AB:12", tagline: "Imperial Black Belgian Ale.", first_brewed: "07/2012",…} 7: {id: 8, name: "Fake Lager", tagline: "Bohemian Pilsner.", first_brewed: "03/2013",…} 8: {id: 9, name: "AB:07", tagline: "Whisky Cask-Aged Scotch Ale.", first_brewed: "03/2010",…} 9: {id: 10, name: "Bramling X", tagline: "Single Hop IPA Series - 2011.", first_brewed: "01/2011",…}

i just need these value/data

id: number;
    name: string;
    tagline: string;
    first_brewed: string;
    description: string;
    ingredients: {
      yeast: string;
    };
    image_url: string;
    abv: string;

import axios, { AxiosInstance } from "axios";
type Props = {
  post: {
    id: number;
    name: string;
    tagline: string;
    first_brewed: string;
    description: string;
    ingredients: {
      yeast: string;
    };
    image_url: string;
    abv: string;
  }[];
};
export const instance : AxiosInstance = axios.create({
  baseURL: `${process.env.REACT_APP_API_BASE_URL}`,
});
type filters={
    beerName: String
    yeast: String
    date: String
    abv: String 
    id: number
    endPage:number
    postPerPage:number
  }
export const getBeersService = async (filters:filters, currentPage:number):Promise<any>=> {
  const { id, beerName, yeast, date, abv, postPerPage } = filters;
  const idQueryString = id ? `&ids=${id}` : "";
  const yeastQueryString = yeast ? `&yeast=${yeast}` : "";
  const beerQueryString = beerName ? `&beer_name=${beerName}` : "";
  const dateQueryString = date ? `&brewed_after=${date}` : "";
  const abvQueryString = abv ? `&abv_gt=${abv}` : "";
  const PerPageQueryString = postPerPage ? `&per_page=${postPerPage}` : "";
  const url = `/beers?page=${currentPage}${PerPageQueryString}${dateQueryString}${abvQueryString}${beerQueryString}${idQueryString}${yeastQueryString}`;
  return await instance.get(url);
};

0 Answers
Related