@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
text/typescript
/**
* AdvancedBilling
*
* This file was automatically generated for Maxio by APIMATIC v3.0 ( https://www.apimatic.io ).
*/
import { array, oneOf, Schema, validateAndMap } from '../../schema';
import { UpdateMetafield, updateMetafieldSchema } from '../updateMetafield';
/** This is a container type for one-of types. */
export type UpdateMetafieldsRequestMetafields =
| UpdateMetafield
| UpdateMetafield[];
export const updateMetafieldsRequestMetafieldsSchema: Schema<UpdateMetafieldsRequestMetafields> = oneOf(
[updateMetafieldSchema, array(updateMetafieldSchema)]
);
export namespace UpdateMetafieldsRequestMetafields {
/**
* Validation method to narrow down union type to UpdateMetafield type case.
*
* This is Update Metafield case.
*/
export function isUpdateMetafield(value: unknown): value is UpdateMetafield {
const validationResult = validateAndMap(value, updateMetafieldSchema);
return validationResult.errors === false;
}
/**
* Validation method to narrow down union type to UpdateMetafield[] type case.
*
* This is Array of Update Metafield case.
*/
export function isArrayOfUpdateMetafield(
value: unknown
): value is UpdateMetafield[] {
if (!Array.isArray(value)) {
return false;
}
const validationResult = validateAndMap(
value,
array(updateMetafieldSchema)
);
return validationResult.errors === false;
}
}