/**
 * Account and Transaction API SpecificationLib
 *
 * This file was automatically generated by APIMATIC v3.0 ( https://www.apimatic.io ).
 */

import { object, Schema, string } from '../schema';
import {
  StatementDateTimeTypeEnum,
  statementDateTimeTypeEnumSchema,
} from './statementDateTimeTypeEnum';

/** Set of elements used to provide details of a generic date time for the statement resource. */
export interface StatementDateTime {
  /**
   * Date and time associated with the date time type.
   * All dates in the JSON payloads are represented in ISO 8601 date-time format.
   * All date-time fields in responses must include the timezone. An example is below:
   * 2017-04-05T10:43:07+00:00
   */
  dateTime: string;
  /** Date time type, in a coded form. */
  type: StatementDateTimeTypeEnum;
}

export const statementDateTimeSchema: Schema<StatementDateTime> = object({
  dateTime: ['DateTime', string()],
  type: ['Type', statementDateTimeTypeEnumSchema],
});
