/**
 * 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 type { User } from './User.js';
import type { KindEnum } from './KindEnum.js';
import type { SuggestionStatusEnum } from './SuggestionStatusEnum.js';
import type { VariantInVariantUpdateSuggestion } from './VariantInVariantUpdateSuggestion.js';
/**
 *
 * @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 declare function instanceOfVariantUpdateSuggestion(value: object): value is VariantUpdateSuggestion;
export declare function VariantUpdateSuggestionFromJSON(json: any): VariantUpdateSuggestion;
export declare function VariantUpdateSuggestionFromJSONTyped(json: any, ignoreDiscriminator: boolean): VariantUpdateSuggestion;
export declare function VariantUpdateSuggestionToJSON(json: any): VariantUpdateSuggestion;
export declare function VariantUpdateSuggestionToJSONTyped(value?: Omit<VariantUpdateSuggestion, 'id' | 'status' | 'suggestedBy' | 'created'> | null, ignoreDiscriminator?: boolean): any;
