UNPKG

@space-cow-media/spellbook-client

Version:

An Open Api generated client for the Commander Spellbook backend REST API.

179 lines (165 loc) 5.37 kB
/* tslint:disable */ /* eslint-disable */ /** * Commander Spellbook API * API for Commander Spellbook, the combo database engine for Magic: The Gathering * * The version of the OpenAPI document: 4.8.19 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import { mapValues } from '../runtime'; import type { User } from './user'; import { UserFromJSON, UserFromJSONTyped, UserToJSON, UserToJSONTyped, } from './user'; import type { KindEnum } from './kindEnum'; import { KindEnumFromJSON, KindEnumFromJSONTyped, KindEnumToJSON, KindEnumToJSONTyped, } from './kindEnum'; import type { SuggestionStatusEnum } from './suggestionStatusEnum'; import { SuggestionStatusEnumFromJSON, SuggestionStatusEnumFromJSONTyped, SuggestionStatusEnumToJSON, SuggestionStatusEnumToJSONTyped, } from './suggestionStatusEnum'; import type { VariantInVariantUpdateSuggestion } from './variantInVariantUpdateSuggestion'; import { VariantInVariantUpdateSuggestionFromJSON, VariantInVariantUpdateSuggestionFromJSONTyped, VariantInVariantUpdateSuggestionToJSON, VariantInVariantUpdateSuggestionToJSONTyped, } from './variantInVariantUpdateSuggestion'; /** * * @export * @interface VariantUpdateSuggestion */ export interface VariantUpdateSuggestion { /** * * @type {number} * @memberof VariantUpdateSuggestion */ readonly id: number; /** * Suggestion status for editors * * * `N` - New * * `AD` - Awaiting Discussion * * `PA` - Pending Approval * * `A` - Accepted * * `R` - Rejected * @type {SuggestionStatusEnum} * @memberof VariantUpdateSuggestion */ readonly status: SuggestionStatusEnum; /** * Type of suggestion * * * `NW` - Not Working * * `SE` - Spelling Error * * `II` - Incorrect Info * * `WC` - Wrong Card * * `VG` - Variant Grouping * * `O` - Other * @type {KindEnum} * @memberof VariantUpdateSuggestion */ kind: KindEnum; /** * * @type {Array<VariantInVariantUpdateSuggestion>} * @memberof VariantUpdateSuggestion */ variants: Array<VariantInVariantUpdateSuggestion>; /** * Description of the problem * @type {string} * @memberof VariantUpdateSuggestion */ issue: string; /** * Description of the solution * @type {string} * @memberof VariantUpdateSuggestion */ solution: string; /** * Comment written by the user that suggested this * @type {string} * @memberof VariantUpdateSuggestion */ comment: string; /** * * @type {User} * @memberof VariantUpdateSuggestion */ readonly suggestedBy: User; /** * * @type {Date} * @memberof VariantUpdateSuggestion */ readonly created: Date; } /** * Check if a given object implements the VariantUpdateSuggestion interface. */ export function instanceOfVariantUpdateSuggestion(value: object): value is VariantUpdateSuggestion { if (!('id' in value) || value['id'] === undefined) return false; if (!('status' in value) || value['status'] === undefined) return false; if (!('kind' in value) || value['kind'] === undefined) return false; if (!('variants' in value) || value['variants'] === undefined) return false; if (!('issue' in value) || value['issue'] === undefined) return false; if (!('solution' in value) || value['solution'] === undefined) return false; if (!('comment' in value) || value['comment'] === undefined) return false; if (!('suggestedBy' in value) || value['suggestedBy'] === undefined) return false; if (!('created' in value) || value['created'] === undefined) return false; return true; } export function VariantUpdateSuggestionFromJSON(json: any): VariantUpdateSuggestion { return VariantUpdateSuggestionFromJSONTyped(json, false); } export function VariantUpdateSuggestionFromJSONTyped(json: any, ignoreDiscriminator: boolean): VariantUpdateSuggestion { if (json == null) { return json; } return { 'id': json['id'], 'status': SuggestionStatusEnumFromJSON(json['status']), 'kind': KindEnumFromJSON(json['kind']), 'variants': ((json['variants'] as Array<any>).map(VariantInVariantUpdateSuggestionFromJSON)), 'issue': json['issue'], 'solution': json['solution'], 'comment': json['comment'], 'suggestedBy': UserFromJSON(json['suggestedBy']), 'created': (new Date(json['created'])), }; } export function VariantUpdateSuggestionToJSON(json: any): VariantUpdateSuggestion { return VariantUpdateSuggestionToJSONTyped(json, false); } export function VariantUpdateSuggestionToJSONTyped(value?: Omit<VariantUpdateSuggestion, 'id'|'status'|'suggestedBy'|'created'> | null, ignoreDiscriminator: boolean = false): any { if (value == null) { return value; } return { 'kind': KindEnumToJSON(value['kind']), 'variants': ((value['variants'] as Array<any>).map(VariantInVariantUpdateSuggestionToJSON)), 'issue': value['issue'], 'solution': value['solution'], 'comment': value['comment'], }; }