export interface FullResponse<T, U extends number> {
  'statusCode': U;
  'headers': object;
  'body': T;
}

export type GetV1DashboardRequest = {
  'filter_type'?: string;
  'x-token'?: string;
  'x-timezone'?: string;
}

export type GetV1DashboardResponseOK = {
  'api': { 'author'?: string; 'version'?: string; 'endpoint'?: string; 'module'?: string };
  'success': boolean;
  'status_code': number;
  'message': string;
  'data': unknown;
  'pagination': unknown;
}
export type GetV1DashboardResponseBadRequest = {
  'api': { 'author'?: string; 'version'?: string; 'endpoint'?: string; 'module'?: string };
  'success': boolean;
  'status_code': number;
  'message': string;
}
export type GetV1DashboardResponseNotFound = {
  'api': { 'author'?: string; 'version'?: string; 'endpoint'?: string; 'module'?: string };
  'success': boolean;
  'status_code': number;
  'message': string;
}
export type GetV1DashboardResponseInternalServerError = {
  'api': { 'author'?: string; 'version'?: string; 'endpoint'?: string; 'module'?: string };
  'success': boolean;
  'status_code': number;
  'message': string;
}
export type GetV1DashboardResponses =
  GetV1DashboardResponseOK
  | GetV1DashboardResponseBadRequest
  | GetV1DashboardResponseNotFound
  | GetV1DashboardResponseInternalServerError

export type GetV1DashboardUserActivityRequest = {
  'filter_type'?: string;
  'x-token'?: string;
  'x-timezone'?: string;
}

export type GetV1DashboardUserActivityResponseOK = {
  'api': { 'author'?: string; 'version'?: string; 'endpoint'?: string; 'module'?: string };
  'success': boolean;
  'status_code': number;
  'message': string;
  'data': unknown;
  'pagination': unknown;
}
export type GetV1DashboardUserActivityResponseBadRequest = {
  'api': { 'author'?: string; 'version'?: string; 'endpoint'?: string; 'module'?: string };
  'success': boolean;
  'status_code': number;
  'message': string;
}
export type GetV1DashboardUserActivityResponseNotFound = {
  'api': { 'author'?: string; 'version'?: string; 'endpoint'?: string; 'module'?: string };
  'success': boolean;
  'status_code': number;
  'message': string;
}
export type GetV1DashboardUserActivityResponseInternalServerError = {
  'api': { 'author'?: string; 'version'?: string; 'endpoint'?: string; 'module'?: string };
  'success': boolean;
  'status_code': number;
  'message': string;
}
export type GetV1DashboardUserActivityResponses =
  GetV1DashboardUserActivityResponseOK
  | GetV1DashboardUserActivityResponseBadRequest
  | GetV1DashboardUserActivityResponseNotFound
  | GetV1DashboardUserActivityResponseInternalServerError



export interface Api {
  setBaseUrl(newUrl: string) : void;
  setDefaultHeaders(headers: Object) : void;
  getV1Dashboard(req?: GetV1DashboardRequest): Promise<GetV1DashboardResponses>;
  getV1DashboardUserActivity(req?: GetV1DashboardUserActivityRequest): Promise<GetV1DashboardUserActivityResponses>;
}
type PlatformaticFrontendClient = Omit<Api, 'setBaseUrl'>
type BuildOptions = {
  headers?: Object
}
export default function build(url: string, options?: BuildOptions): PlatformaticFrontendClient
