// This file is auto-generated by @hey-api/openapi-ts

export type ClientOptions = {
  baseUrl: `${string}://${string}/console/api` | (string & {})
}

export type ApiBasedExtensionListResponse = Array<ApiBasedExtensionResponse>

export type ApiBasedExtensionPayload = {
  api_endpoint: string
  api_key: string
  name: string
}

export type ApiBasedExtensionResponse = {
  api_endpoint: string
  api_key: string
  created_at?: number | null
  id: string
  name: string
}

export type GetApiBasedExtensionData = {
  body?: never
  path?: never
  query?: never
  url: '/api-based-extension'
}

export type GetApiBasedExtensionResponses = {
  200: ApiBasedExtensionListResponse
}

export type GetApiBasedExtensionResponse
  = GetApiBasedExtensionResponses[keyof GetApiBasedExtensionResponses]

export type PostApiBasedExtensionData = {
  body: ApiBasedExtensionPayload
  path?: never
  query?: never
  url: '/api-based-extension'
}

export type PostApiBasedExtensionResponses = {
  201: ApiBasedExtensionResponse
}

export type PostApiBasedExtensionResponse
  = PostApiBasedExtensionResponses[keyof PostApiBasedExtensionResponses]

export type DeleteApiBasedExtensionByIdData = {
  body?: never
  path: {
    id: string
  }
  query?: never
  url: '/api-based-extension/{id}'
}

export type DeleteApiBasedExtensionByIdResponses = {
  204: {
    [key: string]: never
  }
}

export type DeleteApiBasedExtensionByIdResponse
  = DeleteApiBasedExtensionByIdResponses[keyof DeleteApiBasedExtensionByIdResponses]

export type GetApiBasedExtensionByIdData = {
  body?: never
  path: {
    id: string
  }
  query?: never
  url: '/api-based-extension/{id}'
}

export type GetApiBasedExtensionByIdResponses = {
  200: ApiBasedExtensionResponse
}

export type GetApiBasedExtensionByIdResponse
  = GetApiBasedExtensionByIdResponses[keyof GetApiBasedExtensionByIdResponses]

export type PostApiBasedExtensionByIdData = {
  body: ApiBasedExtensionPayload
  path: {
    id: string
  }
  query?: never
  url: '/api-based-extension/{id}'
}

export type PostApiBasedExtensionByIdResponses = {
  200: ApiBasedExtensionResponse
}

export type PostApiBasedExtensionByIdResponse
  = PostApiBasedExtensionByIdResponses[keyof PostApiBasedExtensionByIdResponses]
