Skip to content
Snippets Groups Projects
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
ApiModels.ts 1.67 KiB
export interface NameID {
  id: number
  name: string
}
export interface City extends NameID {}

export interface Role extends NameID {}

export interface QuestionType extends NameID {}
export interface ComponentType extends NameID {}
export interface ViewType extends NameID {}

export interface AllTypes {
  media_types: MediaType[]
  question_types: QuestionType[]
  component_types: ComponentType[]
  view_types: ViewType[]
}

export interface Media {
  id: number
  filename: string
  mediatype_id: number
  user_id: number
}

export interface MediaType extends NameID {}

export interface User extends NameID {
  email: string
  role_id: number
  city_id: number
}

export interface Slide {
  competition_id: number
  id: number
  order: number
  timer: number
  title: string
}

export interface Competition extends NameID {
  font: string
  city_id: number
  year: number
  background_image_id: number
}

export interface Team extends NameID {
  competition_id: number
}

export interface Question extends NameID {
  slide_id: number
  title: string
  total_score: number
  type_id: number
}

export interface QuestionAlternative {
  id: number
  text: string
  value: boolean
  question_id: number
}
export interface QuestionAnswer {
  id: number
  question_id: number
  team_id: number
  data: string
  score: number
}

export interface Component {
  id: number
  x: number
  y: number
  w: number
  h: number
  type: number
}

export interface ImageComponent extends Component {
  media_id: number
}

export interface TextComponent extends Component {
  text: string
  font: string
}

export interface QuestionAlternativeComponent extends Component {
  question_alternative_id: number
  font: string
}