/**
 * Shell EVLib
 *
 * This file was automatically generated by APIMATIC v3.0 ( https://www.apimatic.io ).
 */

import { array, lazy, object, Schema, string } from '../schema';
import {
  GetChargeSessionRetrieveResponse200JsonStatusEnum,
  getChargeSessionRetrieveResponse200JsonStatusEnumSchema,
} from './getChargeSessionRetrieveResponse200JsonStatusEnum';
import {
  InlineResponse202Data,
  inlineResponse202DataSchema,
} from './inlineResponse202Data';

export interface InlineResponse202 {
  /** Mandatory UUID (according to RFC 4122 standards) for requests and responses. This will be played back in the response from the request. */
  requestId: string;
  status: GetChargeSessionRetrieveResponse200JsonStatusEnum;
  data: InlineResponse202Data[];
}

export const inlineResponse202Schema: Schema<InlineResponse202> = object({
  requestId: ['requestId', string()],
  status: ['status', getChargeSessionRetrieveResponse200JsonStatusEnumSchema],
  data: ['data', array(lazy(() => inlineResponse202DataSchema))],
});
