import { VariantInfoSchema, CheckoutResponseSchema, CheckoutBodySchema, CartPricingSchema, CartItemSchema, CartSchema, AddItemPayloadSchema, BrandSchema, cimplifyRegistry } from './chunk-7PAQR3VC.mjs';
export { AddItemPayloadSchema, AddOnDetailsSchema, AddOnGroupDetailsSchema, AddOnInDetailsSchema, AddOnOptionDetailsSchema, AuthorizationTypeSchema, BrandContactSchema, BrandFaqSchema, BrandHeroSchema, BrandNavLinkSchema, BrandPolicyPageSchema, BrandPolicySectionSchema, BrandSchema, BrandSocialSchema, BundleResolvedSchema, BundleSelectionInputSchema, CartItemSchema, CartPricingSchema, CartSchema, CheckoutBodySchema, CheckoutCustomerSchema, CheckoutResponseSchema, ChosenPriceSchema, CompositeResolvedSchema, CompositeSelectionInputSchema, CountryCodeSchema, CurrencyCodeSchema, CustomerInputValueSchema, DiscountDetailsSchema, IsoDateTimeSchema, LineTypeSchema, LocaleSchema, MoneyLooseSchema, MoneySchema, NextActionSchema, PhoneE164Schema, ProductTypeSchema, SchemaViolationError, SeedNameSchema, SelectedAddOnOptionSchema, ServiceStatusSchema, TimestampSchema, VariantDetailsSchema, VariantDisplayAttributeSchema, VariantInfoSchema, assertAddItemPayload, assertBrand, assertCart, assertCartItem, assertCheckoutBody, assertCheckoutResponse, cimplifyRegistry, createTestClient, fixtures, makeAssertion, registerSchema } from './chunk-7PAQR3VC.mjs';
import './chunk-BRVIXGUW.mjs';
import './chunk-NWUEWUX2.mjs';
import './chunk-7BM56JET.mjs';
import './chunk-TD3AY34U.mjs';
import './chunk-AMZXALF6.mjs';
import './chunk-3G6RQLXK.mjs';
import { z } from 'zod';

var PUBLIC_SCHEMAS = {
  Brand: BrandSchema,
  AddItemPayload: AddItemPayloadSchema,
  Cart: CartSchema,
  CartItem: CartItemSchema,
  CartPricing: CartPricingSchema,
  CheckoutBody: CheckoutBodySchema,
  CheckoutResponse: CheckoutResponseSchema,
  VariantInfo: VariantInfoSchema
};
function exportJsonSchemas() {
  const out = {};
  for (const [name, schema] of Object.entries(PUBLIC_SCHEMAS)) {
    const meta = cimplifyRegistry.get(schema);
    const json = z.toJSONSchema(schema, { metadata: cimplifyRegistry });
    if (meta) {
      json.$id = meta.id;
      json["x-cimplify-version"] = meta.version;
    }
    out[name] = json;
  }
  return out;
}
function listRegisteredSchemas() {
  const entries = [];
  for (const schema of [
    BrandSchema,
    AddItemPayloadSchema,
    CartSchema,
    CartItemSchema,
    CartPricingSchema,
    CheckoutBodySchema,
    CheckoutResponseSchema,
    VariantInfoSchema
  ]) {
    const meta = cimplifyRegistry.get(schema);
    if (meta) entries.push({ schema, meta });
  }
  return entries;
}

export { exportJsonSchemas, listRegisteredSchemas };
