@space-cow-media/spellbook-client
Version:
An Open Api generated client for the Commander Spellbook backend REST API.
174 lines (162 loc) • 5.05 kB
text/typescript
/* 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: 5.4.10
*
*
* 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.js';
import type { Variant } from './Variant.js';
import {
VariantFromJSON,
VariantFromJSONTyped,
VariantToJSON,
VariantToJSONTyped,
} from './Variant.js';
/**
*
* @export
* @interface ClassifiedVariant
*/
export interface ClassifiedVariant {
/**
*
* @type {Variant}
* @memberof ClassifiedVariant
*/
combo: Variant;
/**
*
* @type {boolean}
* @memberof ClassifiedVariant
*/
relevant: boolean;
/**
*
* @type {boolean}
* @memberof ClassifiedVariant
*/
borderlineRelevant: boolean;
/**
*
* @type {boolean}
* @memberof ClassifiedVariant
*/
arguablyTwoCard: boolean;
/**
*
* @type {boolean}
* @memberof ClassifiedVariant
*/
definitelyTwoCard: boolean;
/**
*
* @type {number}
* @memberof ClassifiedVariant
*/
speed: number;
/**
*
* @type {boolean}
* @memberof ClassifiedVariant
*/
massLandDenial: boolean;
/**
*
* @type {boolean}
* @memberof ClassifiedVariant
*/
extraTurn: boolean;
/**
*
* @type {boolean}
* @memberof ClassifiedVariant
*/
lock: boolean;
/**
*
* @type {boolean}
* @memberof ClassifiedVariant
*/
skipTurns: boolean;
/**
*
* @type {boolean}
* @memberof ClassifiedVariant
*/
controlAllOpponents: boolean;
/**
*
* @type {boolean}
* @memberof ClassifiedVariant
*/
controlSomeOpponents: boolean;
}
/**
* Check if a given object implements the ClassifiedVariant interface.
*/
export function instanceOfClassifiedVariant(value: object): value is ClassifiedVariant {
if (!('combo' in value) || value['combo'] === undefined) return false;
if (!('relevant' in value) || value['relevant'] === undefined) return false;
if (!('borderlineRelevant' in value) || value['borderlineRelevant'] === undefined) return false;
if (!('arguablyTwoCard' in value) || value['arguablyTwoCard'] === undefined) return false;
if (!('definitelyTwoCard' in value) || value['definitelyTwoCard'] === undefined) return false;
if (!('speed' in value) || value['speed'] === undefined) return false;
if (!('massLandDenial' in value) || value['massLandDenial'] === undefined) return false;
if (!('extraTurn' in value) || value['extraTurn'] === undefined) return false;
if (!('lock' in value) || value['lock'] === undefined) return false;
if (!('skipTurns' in value) || value['skipTurns'] === undefined) return false;
if (!('controlAllOpponents' in value) || value['controlAllOpponents'] === undefined) return false;
if (!('controlSomeOpponents' in value) || value['controlSomeOpponents'] === undefined) return false;
return true;
}
export function ClassifiedVariantFromJSON(json: any): ClassifiedVariant {
return ClassifiedVariantFromJSONTyped(json, false);
}
export function ClassifiedVariantFromJSONTyped(json: any, ignoreDiscriminator: boolean): ClassifiedVariant {
if (json == null) {
return json;
}
return {
'combo': VariantFromJSON(json['combo']),
'relevant': json['relevant'],
'borderlineRelevant': json['borderlineRelevant'],
'arguablyTwoCard': json['arguablyTwoCard'],
'definitelyTwoCard': json['definitelyTwoCard'],
'speed': json['speed'],
'massLandDenial': json['massLandDenial'],
'extraTurn': json['extraTurn'],
'lock': json['lock'],
'skipTurns': json['skipTurns'],
'controlAllOpponents': json['controlAllOpponents'],
'controlSomeOpponents': json['controlSomeOpponents'],
};
}
export function ClassifiedVariantToJSON(json: any): ClassifiedVariant {
return ClassifiedVariantToJSONTyped(json, false);
}
export function ClassifiedVariantToJSONTyped(value?: ClassifiedVariant | null, ignoreDiscriminator: boolean = false): any {
if (value == null) {
return value;
}
return {
'combo': VariantToJSON(value['combo']),
'relevant': value['relevant'],
'borderlineRelevant': value['borderlineRelevant'],
'arguablyTwoCard': value['arguablyTwoCard'],
'definitelyTwoCard': value['definitelyTwoCard'],
'speed': value['speed'],
'massLandDenial': value['massLandDenial'],
'extraTurn': value['extraTurn'],
'lock': value['lock'],
'skipTurns': value['skipTurns'],
'controlAllOpponents': value['controlAllOpponents'],
'controlSomeOpponents': value['controlSomeOpponents'],
};
}