import propTypes from 'prop-types'; namespace io.example.UNSAFE_interface.v0.models { export const user = propTypes.exact({ id: propTypes.string.isRequired, email: propTypes.string, name: propTypes.string, registration_date: propTypes.string.isRequired, }); export const guest = propTypes.exact({ session_id: propTypes.string.isRequired, email: propTypes.string, name: propTypes.string, }); } namespace io.example.UNSAFE_interface.v0.unions { export const person = propTypes.oneOfType([propTypes.exact({ discriminator: propTypes.oneOf(['guest' as 'guest']).isRequired, session_id: propTypes.string.isRequired, email: propTypes.string, name: propTypes.string, }), propTypes.exact({ discriminator: propTypes.oneOf(['user' as 'user']).isRequired, id: propTypes.string.isRequired, email: propTypes.string, name: propTypes.string, registration_date: propTypes.string.isRequired, })]); } export const guest = io.example.UNSAFE_interface.v0.models.guest; export const person = io.example.UNSAFE_interface.v0.unions.person; export const user = io.example.UNSAFE_interface.v0.models.user;