/* Options:
Date: 2025-05-29 09:48:02
Version: 8.71
Tip: To override a DTO option, remove "//" prefix before updating
BaseUrl: https://team.evovoice.io

//GlobalNamespace: 
//AddServiceStackTypes: True
//AddResponseStatus: False
//AddImplicitVersion: 
//AddDescriptionAsComments: True
IncludeTypes: DeleteAccount.*
//ExcludeTypes: 
//DefaultImports: package:servicestack/servicestack.dart,dart:typed_data
*/

import 'package:servicestack/servicestack.dart';
import 'dart:typed_data';

/**
* Deletes the specified account and everything in it. Can only be performed by a System Administrator
*/
// @Route("/accounts/{accountId}", "DELETE")
// @Api(Description="Deletes the specified account and everything in it. Can only be performed by a System Administrator")
class DeleteAccount implements IReturnVoid, IDelete, IConvertible
{
    /**
    * The ID of the account to delete
    */
    // @ApiMember(Description="The ID of the account to delete")
    String? accountId;

    DeleteAccount({this.accountId});
    DeleteAccount.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        accountId = json['accountId'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'accountId': accountId
    };

    createResponse() {}
    getTypeName() => "DeleteAccount";
    TypeContext? context = _ctx;
}

TypeContext _ctx = TypeContext(library: 'team.evovoice.io', types: <String, TypeInfo> {
    'DeleteAccount': TypeInfo(TypeOf.Class, create:() => DeleteAccount()),
});