# All files / codegen/models CreateCreditGrantArgs.ts

68.9% Statements 82/119
100% Branches 0/0
0% Functions 0/3
68.9% Lines 82/119

Press n or j to go to the next uncovered block, b, p or k for the previous block.

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    1211x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x
    1x

    1x
    1x

    1x
    1x

     /* tslint:disable */
    /* eslint-disable */
    /**
     * Octane API
     * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
     *
     * The version of the OpenAPI document: 1.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 { exists, mapValues } from '../runtime';
    /**
     *
     * @export
     * @interface CreateCreditGrantArgs
     */
    export interface CreateCreditGrantArgs {
        /**
         * The date at which the grant is effective
         * @type {Date}
         * @memberof CreateCreditGrantArgs
         */
        effectiveAt?: Date;
        /**
         * Total price paid for the credits in cents. Defaults to $1 (100 cents) per credit if not specified
         * @type {number}
         * @memberof CreateCreditGrantArgs
         */
        price?: number;
        /**
         * Number of credits to grant
         * @type {number}
         * @memberof CreateCreditGrantArgs
         */
        amount: number;
        /**
         * Determines whether to synchronously create an invoice and charge the customer
         * @type {boolean}
         * @memberof CreateCreditGrantArgs
         */
        chargeImmediately?: boolean;
        /**
         * The date at which this grant expires
         * @type {Date}
         * @memberof CreateCreditGrantArgs
         */
        expiresAt?: Date;
        /**
         * Optional description. This is only viewable internally
         * @type {string}
         * @memberof CreateCreditGrantArgs
         */
        description?: string;
        /**
         * Name of the customer receving the grant
         * @type {string}
         * @memberof CreateCreditGrantArgs
         */
        customerName: string;
        /**
         * Time length of the default expiration for credits granted in a top off.
         * @type {number}
         * @memberof CreateCreditGrantArgs
         */
        expirationLength?: number;
        /**
         * Time length unit for the default expiration for credits granted in a top off.
         * @type {string}
         * @memberof CreateCreditGrantArgs
         */
        expirationUnit?: string;
    }

    export function CreateCreditGrantArgsFromJSON(json: any): CreateCreditGrantArgs {
        return CreateCreditGrantArgsFromJSONTyped(json, false);
    }

    export function CreateCreditGrantArgsFromJSONTyped(json: any, ignoreDiscriminator: boolean): CreateCreditGrantArgs {
        if ((json === undefined) || (json === null)) {
            return json;
        }
        return {

            'effectiveAt': !exists(json, 'effective_at') ? undefined : (new Date(json['effective_at'])),
            'price': !exists(json, 'price') ? undefined : json['price'],
            'amount': json['amount'],
            'chargeImmediately': !exists(json, 'charge_immediately') ? undefined : json['charge_immediately'],
            'expiresAt': !exists(json, 'expires_at') ? undefined : (new Date(json['expires_at'])),
            'description': !exists(json, 'description') ? undefined : json['description'],
            'customerName': json['customer_name'],
            'expirationLength': !exists(json, 'expiration_length') ? undefined : json['expiration_length'],
            'expirationUnit': !exists(json, 'expiration_unit') ? undefined : json['expiration_unit'],
        };
    }

    export function CreateCreditGrantArgsToJSON(value?: CreateCreditGrantArgs | null): any {
        if (value === undefined) {
            return undefined;
        }
        if (value === null) {
            return null;
        }
        return {

            'effective_at': value.effectiveAt === undefined ? undefined : (value.effectiveAt.toISOString()),
            'price': value.price,
            'amount': value.amount,
            'charge_immediately': value.chargeImmediately,
            'expires_at': value.expiresAt === undefined ? undefined : (value.expiresAt.toISOString()),
            'description': value.description,
            'customer_name': value.customerName,
            'expiration_length': value.expirationLength,
            'expiration_unit': value.expirationUnit,
        };
    }