/**
 * 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.
 */
/**
 *
 * @export
 * @interface CreditPlanInputArgs
 */
export interface CreditPlanInputArgs {
    /**
     * Interval, in billing cycles, between each credit grant. Null for single grant plans.
     * @type {number}
     * @memberof CreditPlanInputArgs
     */
    intervalBetweenGrants?: number;
    /**
     * Price for the grant, in lowest denomination (i.e cents). Defaults to $1 (100 cents) per credit if not specified
     * @type {number}
     * @memberof CreditPlanInputArgs
     */
    price?: number;
    /**
     * Amount of credits that are granted in a single grant.
     * @type {number}
     * @memberof CreditPlanInputArgs
     */
    amount: number;
    /**
     * Duration unit before each credit grant expires. Null for no expiration.
     * @type {string}
     * @memberof CreditPlanInputArgs
     */
    grantExpirationUnit?: string;
    /**
     * A description that will be used on the invoice line items.
     * @type {string}
     * @memberof CreditPlanInputArgs
     */
    description?: string;
    /**
     * How many payments each credit grant will have. Defaults to 1 for single payment grants. If this plan has has recurring grants (i.e `interval_between_grants` is not null), then this field must be a factor of `interval_between_grants`.
     * @type {number}
     * @memberof CreditPlanInputArgs
     */
    paymentsPerGrant?: number;
    /**
     * Billing cycles between payments. Null for grants paid in a single payment. If this plan has recurring grants (i.e `interval_between_grants` is not null), then this field must be a factor of `interval_between_grants`.
     * @type {number}
     * @memberof CreditPlanInputArgs
     */
    intervalBetweenPayments?: number;
    /**
     * Duration length before each credit grant expires. Null for no expiration.
     * @type {number}
     * @memberof CreditPlanInputArgs
     */
    grantExpirationLength?: number;
}
export declare function CreditPlanInputArgsFromJSON(json: any): CreditPlanInputArgs;
export declare function CreditPlanInputArgsFromJSONTyped(json: any, ignoreDiscriminator: boolean): CreditPlanInputArgs;
export declare function CreditPlanInputArgsToJSON(value?: CreditPlanInputArgs | null): any;
