UNPKG

@prefecthq/prefect-ui-library

Version:

This library is the Vue and Typescript component library for [Prefect 2](https://github.com/PrefectHQ/prefect) and [Prefect Cloud 2](https://www.prefect.io/cloud/). _The components and utilities in this project are not meant to be used independently_.

36 lines (35 loc) 2.24 kB
import { AxiosInstance, AxiosRequestConfig, AxiosResponse, RawAxiosRequestHeaders } from 'axios'; import { MaybeGetter } from '../types'; import { MaybeArray } from '../types/utilities'; export type AxiosInstanceSetupHook = (instance: AxiosInstance) => void; export type PrefectConfig = { baseUrl: string; token?: string; }; type ConfigFunction<R, T extends PrefectConfig = PrefectConfig> = (config: T) => R; export type ApiBaseUrl<T extends PrefectConfig = PrefectConfig> = string | ConfigFunction<string, T>; export type ApiHeaders<T extends PrefectConfig = PrefectConfig> = RawAxiosRequestHeaders | ConfigFunction<RawAxiosRequestHeaders, T>; export declare const getPrefectBaseUrl: ApiBaseUrl; export declare const getPrefectUIHeaders: RawAxiosRequestHeaders; export declare const getAuthorizationHeaders: ApiHeaders; export declare class Api<T extends PrefectConfig = PrefectConfig> { protected readonly apiConfig: MaybeGetter<T>; protected apiHeaders: MaybeArray<ApiHeaders>; protected apiBaseUrl: ApiBaseUrl; protected routePrefix: string | undefined; protected instanceSetupHook: AxiosInstanceSetupHook | null; constructor(apiConfig: MaybeGetter<T>, instanceSetupHook?: AxiosInstanceSetupHook | null); protected getConfig(): T; protected composeBaseUrl(): string; protected composeHeaders(): RawAxiosRequestHeaders; protected combinePath(route: string | undefined): string; protected instance(): AxiosInstance; protected get<T, R = AxiosResponse<T>>(route?: string, config?: AxiosRequestConfig): Promise<R>; protected delete<T, R = AxiosResponse<T>>(route?: string, config?: AxiosRequestConfig): Promise<R>; protected head<T, R = AxiosResponse<T>>(route?: string, config?: AxiosRequestConfig): Promise<R>; protected options<T, R = AxiosResponse<T>>(route?: string, config?: AxiosRequestConfig): Promise<R>; protected post<T, R = AxiosResponse<T>>(route?: string, data?: any, config?: AxiosRequestConfig): Promise<R>; protected put<T, R = AxiosResponse<T>>(route?: string, data?: any, config?: AxiosRequestConfig): Promise<R>; protected patch<T, R = AxiosResponse<T>>(route?: string, data?: any, config?: AxiosRequestConfig): Promise<R>; } export {};