class Project {
  ownerGitlabId: number
  name: string
  desc: string
  id?: number
  logo?: string
  path?: string

  constructor (ownerGitlabId: number, name: string, desc: string, id?: number, logo?: string, path?: string) {
    this.ownerGitlabId = ownerGitlabId
    this.name = name
    this.desc = desc
    this.id = id
    this.logo = logo
    this.path = path
  }

  // getter
  getOwnerGitlabId () {
    return this.ownerGitlabId
  }

  getId () {
    return this.id
  }

  getName () {
    return this.name
  }

  getDesc () {
    return this.desc
  }

  getLogo () {
    return this.logo
  }

  getPath () {
    return this.path
  }

  // setter
  setOwnerGitlabId (newOwnerGitlabId: number) {
    this.ownerGitlabId = newOwnerGitlabId
  }

  setId (newId: number) {
    this.id = newId
  }

  setName (newName: string) {
    this.name = newName
  }

  setDesc (newDesc: string) {
    this.desc = newDesc
  }

  setLogo (newLogoUrl: string) {
    this.logo = newLogoUrl
  }

  setPath (newPath: string) {
    this.path = newPath
  }
}

export = Project