# All files / codegen/models CreditTopOffPlan.ts

68.46% Statements 76/111
100% Branches 0/0
0% Functions 0/3
68.46% Lines 76/111

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
    1131x
    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 CreditTopOffPlan
     */
    export interface CreditTopOffPlan {
        /**
         * Unique identifier of this top off plan.
         * @type {string}
         * @memberof CreditTopOffPlan
         */
        uuid?: string;
        /**
         * The threshold in amount of credits at which the balance will be topped off.
         * @type {number}
         * @memberof CreditTopOffPlan
         */
        triggerAmount: number;
        /**
         * Amount of credits that are granted in a single top off.
         * @type {number}
         * @memberof CreditTopOffPlan
         */
        grantAmount: number;
        /**
         * Price for the grant, in lowest denomination (i.e cents).
         * @type {number}
         * @memberof CreditTopOffPlan
         */
        price: number;
        /**
         * Time length of the default expiration for credits granted in a top off.
         * @type {number}
         * @memberof CreditTopOffPlan
         */
        expirationLength?: number | null;
        /**
         * Time length unit for the default expiration for credits granted in a top off.
         * @type {string}
         * @memberof CreditTopOffPlan
         */
        expirationUnit?: string | null;
        /**
         * A description that will be used on the invoice line items.
         * @type {string}
         * @memberof CreditTopOffPlan
         */
        description?: string | null;
        /**
         * Whether to charge the customer immediately when the top off is triggered.
         * @type {boolean}
         * @memberof CreditTopOffPlan
         */
        chargeImmediately?: boolean;
    }

    export function CreditTopOffPlanFromJSON(json: any): CreditTopOffPlan {
        return CreditTopOffPlanFromJSONTyped(json, false);
    }

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

            'uuid': !exists(json, 'uuid') ? undefined : json['uuid'],
            'triggerAmount': json['trigger_amount'],
            'grantAmount': json['grant_amount'],
            'price': json['price'],
            'expirationLength': !exists(json, 'expiration_length') ? undefined : json['expiration_length'],
            'expirationUnit': !exists(json, 'expiration_unit') ? undefined : json['expiration_unit'],
            'description': !exists(json, 'description') ? undefined : json['description'],
            'chargeImmediately': !exists(json, 'charge_immediately') ? undefined : json['charge_immediately'],
        };
    }

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

            'uuid': value.uuid,
            'trigger_amount': value.triggerAmount,
            'grant_amount': value.grantAmount,
            'price': value.price,
            'expiration_length': value.expirationLength,
            'expiration_unit': value.expirationUnit,
            'description': value.description,
            'charge_immediately': value.chargeImmediately,
        };
    }