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

import { lazy, object, Schema } from '../schema';
import {
  GetAccountPartyResponseData,
  getAccountPartyResponseDataSchema,
} from './getAccountPartyResponseData';
import { Links, linksSchema } from './links';
import { Meta, metaSchema } from './meta';

export interface GetPartyResponse {
  data: GetAccountPartyResponseData;
  /** Links relevant to the payload */
  links: Links;
  meta: Meta;
}

export const getPartyResponseSchema: Schema<GetPartyResponse> = object({
  data: ['Data', lazy(() => getAccountPartyResponseDataSchema)],
  links: ['Links', lazy(() => linksSchema)],
  meta: ['Meta', lazy(() => metaSchema)],
});
