gatcg
Version:
Community maintained Typescript client for the Grand Archive TCG API.
246 lines (234 loc) • 6.26 kB
text/typescript
/* tslint:disable */
/* eslint-disable */
/**
* Grand Archive TCG API
* See https://index.gatcg.com/api
*
* The version of the OpenAPI document: 0.0
*
*
* 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 { CardEdition } from './CardEdition';
import {
CardEditionFromJSON,
CardEditionFromJSONTyped,
CardEditionToJSON,
CardEditionToJSONTyped,
} from './CardEdition';
/**
*
* @export
* @interface FullCard
*/
export interface FullCard {
/**
*
* @type {string}
* @memberof FullCard
*/
uuid: string;
/**
*
* @type {Array<string>}
* @memberof FullCard
*/
types: Array<string>;
/**
*
* @type {Array<string>}
* @memberof FullCard
*/
subtypes?: Array<string>;
/**
*
* @type {Array<string>}
* @memberof FullCard
*/
classes?: Array<string>;
/**
*
* @type {string}
* @memberof FullCard
*/
element?: string;
/**
*
* @type {string}
* @memberof FullCard
*/
name: string;
/**
*
* @type {string}
* @memberof FullCard
*/
slug: string;
/**
*
* @type {string}
* @memberof FullCard
*/
effect?: string;
/**
*
* @type {string}
* @memberof FullCard
*/
effectRaw?: string;
/**
*
* @type {string}
* @memberof FullCard
*/
rule?: string;
/**
*
* @type {string}
* @memberof FullCard
*/
flavor?: string;
/**
*
* @type {number}
* @memberof FullCard
*/
costMemory?: number;
/**
*
* @type {number}
* @memberof FullCard
*/
level?: number;
/**
*
* @type {number}
* @memberof FullCard
*/
power?: number;
/**
*
* @type {number}
* @memberof FullCard
*/
life?: number;
/**
*
* @type {number}
* @memberof FullCard
*/
durability?: number;
/**
*
* @type {boolean}
* @memberof FullCard
*/
speed?: boolean;
/**
*
* @type {string}
* @memberof FullCard
*/
legality?: string;
/**
*
* @type {Array<string>}
* @memberof FullCard
*/
relatedIds?: Array<string>;
/**
*
* @type {string}
* @memberof FullCard
*/
lastUpdate?: string;
/**
*
* @type {Array<CardEdition>}
* @memberof FullCard
*/
editions?: Array<CardEdition>;
/**
*
* @type {Array<object>}
* @memberof FullCard
*/
resultEditions?: Array<object>;
}
/**
* Check if a given object implements the FullCard interface.
*/
export function instanceOfFullCard(value: object): value is FullCard {
if (!('uuid' in value) || value['uuid'] === undefined) return false;
if (!('types' in value) || value['types'] === undefined) return false;
if (!('name' in value) || value['name'] === undefined) return false;
if (!('slug' in value) || value['slug'] === undefined) return false;
return true;
}
export function FullCardFromJSON(json: any): FullCard {
return FullCardFromJSONTyped(json, false);
}
export function FullCardFromJSONTyped(json: any, ignoreDiscriminator: boolean): FullCard {
if (json == null) {
return json;
}
return {
'uuid': json['uuid'],
'types': json['types'],
'subtypes': json['subtypes'] == null ? undefined : json['subtypes'],
'classes': json['classes'] == null ? undefined : json['classes'],
'element': json['element'] == null ? undefined : json['element'],
'name': json['name'],
'slug': json['slug'],
'effect': json['effect'] == null ? undefined : json['effect'],
'effectRaw': json['effect_raw'] == null ? undefined : json['effect_raw'],
'rule': json['rule'] == null ? undefined : json['rule'],
'flavor': json['flavor'] == null ? undefined : json['flavor'],
'costMemory': json['cost_memory'] == null ? undefined : json['cost_memory'],
'level': json['level'] == null ? undefined : json['level'],
'power': json['power'] == null ? undefined : json['power'],
'life': json['life'] == null ? undefined : json['life'],
'durability': json['durability'] == null ? undefined : json['durability'],
'speed': json['speed'] == null ? undefined : json['speed'],
'legality': json['legality'] == null ? undefined : json['legality'],
'relatedIds': json['related_ids'] == null ? undefined : json['related_ids'],
'lastUpdate': json['last_update'] == null ? undefined : json['last_update'],
'editions': json['editions'] == null ? undefined : ((json['editions'] as Array<any>).map(CardEditionFromJSON)),
'resultEditions': json['result_editions'] == null ? undefined : json['result_editions'],
};
}
export function FullCardToJSON(json: any): FullCard {
return FullCardToJSONTyped(json, false);
}
export function FullCardToJSONTyped(value?: FullCard | null, ignoreDiscriminator: boolean = false): any {
if (value == null) {
return value;
}
return {
'uuid': value['uuid'],
'types': value['types'],
'subtypes': value['subtypes'],
'classes': value['classes'],
'element': value['element'],
'name': value['name'],
'slug': value['slug'],
'effect': value['effect'],
'effect_raw': value['effectRaw'],
'rule': value['rule'],
'flavor': value['flavor'],
'cost_memory': value['costMemory'],
'level': value['level'],
'power': value['power'],
'life': value['life'],
'durability': value['durability'],
'speed': value['speed'],
'legality': value['legality'],
'related_ids': value['relatedIds'],
'last_update': value['lastUpdate'],
'editions': value['editions'] == null ? undefined : ((value['editions'] as Array<any>).map(CardEditionToJSON)),
'result_editions': value['resultEditions'],
};
}