import * as jspb from 'google-protobuf'



export class Album extends jspb.Message {
  getAlbumId(): number;
  setAlbumId(value: number): Album;

  getTitle(): string;
  setTitle(value: string): Album;

  getArtistId(): number;
  setArtistId(value: number): Album;

  getReleaseDate(): number;
  setReleaseDate(value: number): Album;
  hasReleaseDate(): boolean;
  clearReleaseDate(): Album;

  getCoverUrl(): string;
  setCoverUrl(value: string): Album;

  getGenreId(): number;
  setGenreId(value: number): Album;
  hasGenreId(): boolean;
  clearGenreId(): Album;

  serializeBinary(): Uint8Array;
  toObject(includeInstance?: boolean): Album.AsObject;
  static toObject(includeInstance: boolean, msg: Album): Album.AsObject;
  static serializeBinaryToWriter(message: Album, writer: jspb.BinaryWriter): void;
  static deserializeBinary(bytes: Uint8Array): Album;
  static deserializeBinaryFromReader(message: Album, reader: jspb.BinaryReader): Album;
}

export namespace Album {
  export type AsObject = {
    albumId: number,
    title: string,
    artistId: number,
    releaseDate?: number,
    coverUrl: string,
    genreId?: number,
  }

  export enum ReleaseDateCase { 
    _RELEASE_DATE_NOT_SET = 0,
    RELEASE_DATE = 4,
  }

  export enum GenreIdCase { 
    _GENRE_ID_NOT_SET = 0,
    GENRE_ID = 6,
  }
}

