Skip to content
Snippets Groups Projects
types.ts 1.38 KiB
Newer Older
import { components as steeringComponents } from '@/steering-types'
import { components as tankComponents } from '@/tank-types'
export type Module = {
  icon: string
  slug: string
  title: string
}

export type PaginationData = {
  count: number
  hasNext: boolean
  hasPrevious: boolean
  page: number
  itemsPerPage: number
  itemRange: [number, number]
}
export type KeysFrom<T, K extends keyof T> = K

export type TimeSlot = Required<steeringComponents['schemas']['TimeSlot']>
export type Show = Required<steeringComponents['schemas']['Show']>
export type Playlist = Required<tankComponents['schemas']['store.Playlist']>
export type Schedule = Required<steeringComponents['schemas']['Schedule']>
export type Host = Required<steeringComponents['schemas']['Host']>
export type Category = Required<steeringComponents['schemas']['Category']>
export type FundingCategory = Required<steeringComponents['schemas']['FundingCategory']>
export type Language = Required<steeringComponents['schemas']['Language']>
export type MusicFocus = Required<steeringComponents['schemas']['MusicFocus']>
export type Type = Required<steeringComponents['schemas']['Type']>
export type Topic = Required<steeringComponents['schemas']['Topic']>
export type License = Required<steeringComponents['schemas']['License']>
export type Note = Required<
  Omit<steeringComponents['schemas']['Note'], 'tags' | 'playlistId'> & { tags: string[] }
>