UNPKG

@maxio-com/advanced-billing-sdk

Version:

Ultimate billing and pricing flexibility for B2B SaaS. Maxio integrates directly into your product, so you can seamlessly manage your product catalog, bill customers, and collect payments.

48 lines (42 loc) 1.42 kB
/** * AdvancedBilling * * This file was automatically generated for Maxio by APIMATIC v3.0 ( https://www.apimatic.io ). */ import { array, oneOf, Schema, validateAndMap } from '../../schema'; import { CreateMetafield, createMetafieldSchema } from '../createMetafield'; /** This is a container type for one-of types. */ export type CreateMetafieldsRequestMetafields = | CreateMetafield | CreateMetafield[]; export const createMetafieldsRequestMetafieldsSchema: Schema<CreateMetafieldsRequestMetafields> = oneOf( [createMetafieldSchema, array(createMetafieldSchema)] ); export namespace CreateMetafieldsRequestMetafields { /** * Validation method to narrow down union type to CreateMetafield type case. * * This is Create Metafield case. */ export function isCreateMetafield(value: unknown): value is CreateMetafield { const validationResult = validateAndMap(value, createMetafieldSchema); return validationResult.errors === false; } /** * Validation method to narrow down union type to CreateMetafield[] type case. * * This is Array of Create Metafield case. */ export function isArrayOfCreateMetafield( value: unknown ): value is CreateMetafield[] { if (!Array.isArray(value)) { return false; } const validationResult = validateAndMap( value, array(createMetafieldSchema) ); return validationResult.errors === false; } }