def register_Ns3TypeId_methods(root_module, cls):
    cls.add_binary_comparison_operator('==')
    cls.add_binary_comparison_operator('!=')
    cls.add_output_stream_operator()
    cls.add_binary_comparison_operator('<')
    cls.add_constructor([param('char const *', 'name')])
    cls.add_constructor([])
    cls.add_constructor([param('ns3::TypeId const &', 'o')])
    cls.add_method('AddAttribute', 'ns3::TypeId', [param('std::string', 'name'), param('std::string', 'help'), param('ns3::AttributeValue const &', 'initialValue'), param('ns3::Ptr< ns3::AttributeAccessor const >', 'accessor'), param('ns3::Ptr< ns3::AttributeChecker const >', 'checker'), param('ns3::TypeId::SupportLevel', 'supportLevel', default_value='::ns3::TypeId::SupportLevel::SUPPORTED'), param('std::string const &', 'supportMsg', default_value='""')])
    cls.add_method('AddAttribute', 'ns3::TypeId', [param('std::string', 'name'), param('std::string', 'help'), param('uint32_t', 'flags'), param('ns3::AttributeValue const &', 'initialValue'), param('ns3::Ptr< ns3::AttributeAccessor const >', 'accessor'), param('ns3::Ptr< ns3::AttributeChecker const >', 'checker'), param('ns3::TypeId::SupportLevel', 'supportLevel', default_value='::ns3::TypeId::SupportLevel::SUPPORTED'), param('std::string const &', 'supportMsg', default_value='""')])
    cls.add_method('AddTraceSource', 'ns3::TypeId', [param('std::string', 'name'), param('std::string', 'help'), param('ns3::Ptr< ns3::TraceSourceAccessor const >', 'accessor')], deprecated=True)
    cls.add_method('AddTraceSource', 'ns3::TypeId', [param('std::string', 'name'), param('std::string', 'help'), param('ns3::Ptr< ns3::TraceSourceAccessor const >', 'accessor'), param('std::string', 'callback'), param('ns3::TypeId::SupportLevel', 'supportLevel', default_value='::ns3::TypeId::SupportLevel::SUPPORTED'), param('std::string const &', 'supportMsg', default_value='""')])
    cls.add_method('GetAttribute', 'ns3::TypeId::AttributeInformation', [param('std::size_t', 'i')], is_const=True)
    cls.add_method('GetAttributeFullName', 'std::string', [param('std::size_t', 'i')], is_const=True)
    cls.add_method('GetAttributeN', 'std::size_t', [], is_const=True)
    cls.add_method('GetConstructor', 'ns3::Callback< ns3::ObjectBase *, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty >', [], is_const=True)
    cls.add_method('GetGroupName', 'std::string', [], is_const=True)
    cls.add_method('GetHash', 'ns3::TypeId::hash_t', [], is_const=True)
    cls.add_method('GetName', 'std::string', [], is_const=True)
    cls.add_method('GetParent', 'ns3::TypeId', [], is_const=True)
    cls.add_method('GetRegistered', 'ns3::TypeId', [param('uint16_t', 'i')], is_static=True)
    cls.add_method('GetRegisteredN', 'uint16_t', [], is_static=True)
    cls.add_method('GetSize', 'std::size_t', [], is_const=True)
    cls.add_method('GetTraceSource', 'ns3::TypeId::TraceSourceInformation', [param('std::size_t', 'i')], is_const=True)
    cls.add_method('GetTraceSourceN', 'std::size_t', [], is_const=True)
    cls.add_method('GetUid', 'uint16_t', [], is_const=True)
    cls.add_method('HasConstructor', 'bool', [], is_const=True)
    cls.add_method('HasParent', 'bool', [], is_const=True)
    cls.add_method('HideFromDocumentation', 'ns3::TypeId', [])
    cls.add_method('IsChildOf', 'bool', [param('ns3::TypeId', 'other')], is_const=True)
    cls.add_method('LookupAttributeByName', 'bool', [param('std::string', 'name'), param('ns3::TypeId::AttributeInformation *', 'info', transfer_ownership=False)], is_const=True)
    cls.add_method('LookupByHash', 'ns3::TypeId', [param('uint32_t', 'hash')], is_static=True)
    cls.add_method('LookupByHashFailSafe', 'bool', [param('uint32_t', 'hash'), param('ns3::TypeId *', 'tid')], is_static=True)
    cls.add_method('LookupByName', 'ns3::TypeId', [param('std::string', 'name')], is_static=True)
    cls.add_method('LookupTraceSourceByName', 'ns3::Ptr< ns3::TraceSourceAccessor const >', [param('std::string', 'name')], is_const=True)
    cls.add_method('LookupTraceSourceByName', 'ns3::Ptr< ns3::TraceSourceAccessor const >', [param('std::string', 'name'), param('ns3::TypeId::TraceSourceInformation *', 'info')], is_const=True)
    cls.add_method('MustHideFromDocumentation', 'bool', [], is_const=True)
    cls.add_method('SetAttributeInitialValue', 'bool', [param('std::size_t', 'i'), param('ns3::Ptr< ns3::AttributeValue const >', 'initialValue')])
    cls.add_method('SetGroupName', 'ns3::TypeId', [param('std::string', 'groupName')])
    cls.add_method('SetParent', 'ns3::TypeId', [param('ns3::TypeId', 'tid')])
    cls.add_method('SetSize', 'ns3::TypeId', [param('std::size_t', 'size')])
    cls.add_method('SetUid', 'void', [param('uint16_t', 'uid')])
    return
def register_Ns3TypeId_methods(root_module, cls):
    cls.add_binary_comparison_operator('==')
    cls.add_binary_comparison_operator('!=')
    cls.add_output_stream_operator()
    cls.add_binary_comparison_operator('<')
    cls.add_constructor([param('char const *', 'name')])
    cls.add_constructor([])
    cls.add_constructor([param('ns3::TypeId const &', 'o')])
    cls.add_method('AddAttribute', 'ns3::TypeId', [param('std::string', 'name'), param('std::string', 'help'), param('ns3::AttributeValue const &', 'initialValue'), param('ns3::Ptr< ns3::AttributeAccessor const >', 'accessor'), param('ns3::Ptr< ns3::AttributeChecker const >', 'checker'), param('ns3::TypeId::SupportLevel', 'supportLevel', default_value='::ns3::TypeId::SupportLevel::SUPPORTED'), param('std::string const &', 'supportMsg', default_value='')])
    cls.add_method('AddAttribute', 'ns3::TypeId', [param('std::string', 'name'), param('std::string', 'help'), param('uint32_t', 'flags'), param('ns3::AttributeValue const &', 'initialValue'), param('ns3::Ptr< ns3::AttributeAccessor const >', 'accessor'), param('ns3::Ptr< ns3::AttributeChecker const >', 'checker'), param('ns3::TypeId::SupportLevel', 'supportLevel', default_value='::ns3::TypeId::SupportLevel::SUPPORTED'), param('std::string const &', 'supportMsg', default_value='')])
    cls.add_method('AddTraceSource', 'ns3::TypeId', [param('std::string', 'name'), param('std::string', 'help'), param('ns3::Ptr< ns3::TraceSourceAccessor const >', 'accessor')], deprecated=True)
    cls.add_method('AddTraceSource', 'ns3::TypeId', [param('std::string', 'name'), param('std::string', 'help'), param('ns3::Ptr< ns3::TraceSourceAccessor const >', 'accessor'), param('std::string', 'callback'), param('ns3::TypeId::SupportLevel', 'supportLevel', default_value='::ns3::TypeId::SupportLevel::SUPPORTED'), param('std::string const &', 'supportMsg', default_value='')])
    cls.add_method('GetAttribute', 'ns3::TypeId::AttributeInformation', [param('std::size_t', 'i')], is_const=True)
    cls.add_method('GetAttributeFullName', 'std::string', [param('std::size_t', 'i')], is_const=True)
    cls.add_method('GetAttributeN', 'std::size_t', [], is_const=True)
    cls.add_method('GetConstructor', 'ns3::Callback< ns3::ObjectBase *, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty >', [], is_const=True)
    cls.add_method('GetGroupName', 'std::string', [], is_const=True)
    cls.add_method('GetHash', 'ns3::TypeId::hash_t', [], is_const=True)
    cls.add_method('GetName', 'std::string', [], is_const=True)
    cls.add_method('GetParent', 'ns3::TypeId', [], is_const=True)
    cls.add_method('GetRegistered', 'ns3::TypeId', [param('uint16_t', 'i')], is_static=True)
    cls.add_method('GetRegisteredN', 'uint16_t', [], is_static=True)
    cls.add_method('GetSize', 'std::size_t', [], is_const=True)
    cls.add_method('GetTraceSource', 'ns3::TypeId::TraceSourceInformation', [param('std::size_t', 'i')], is_const=True)
    cls.add_method('GetTraceSourceN', 'std::size_t', [], is_const=True)
    cls.add_method('GetUid', 'uint16_t', [], is_const=True)
    cls.add_method('HasConstructor', 'bool', [], is_const=True)
    cls.add_method('HasParent', 'bool', [], is_const=True)
    cls.add_method('HideFromDocumentation', 'ns3::TypeId', [])
    cls.add_method('IsChildOf', 'bool', [param('ns3::TypeId', 'other')], is_const=True)
    cls.add_method('LookupAttributeByName', 'bool', [param('std::string', 'name'), param('ns3::TypeId::AttributeInformation *', 'info', transfer_ownership=False)], is_const=True)
    cls.add_method('LookupByHash', 'ns3::TypeId', [param('uint32_t', 'hash')], is_static=True)
    cls.add_method('LookupByHashFailSafe', 'bool', [param('uint32_t', 'hash'), param('ns3::TypeId *', 'tid')], is_static=True)
    cls.add_method('LookupByName', 'ns3::TypeId', [param('std::string', 'name')], is_static=True)
    cls.add_method('LookupTraceSourceByName', 'ns3::Ptr< ns3::TraceSourceAccessor const >', [param('std::string', 'name')], is_const=True)
    cls.add_method('LookupTraceSourceByName', 'ns3::Ptr< ns3::TraceSourceAccessor const >', [param('std::string', 'name'), param('ns3::TypeId::TraceSourceInformation *', 'info')], is_const=True)
    cls.add_method('MustHideFromDocumentation', 'bool', [], is_const=True)
    cls.add_method('SetAttributeInitialValue', 'bool', [param('std::size_t', 'i'), param('ns3::Ptr< ns3::AttributeValue const >', 'initialValue')])
    cls.add_method('SetGroupName', 'ns3::TypeId', [param('std::string', 'groupName')])
    cls.add_method('SetParent', 'ns3::TypeId', [param('ns3::TypeId', 'tid')])
    cls.add_method('SetSize', 'ns3::TypeId', [param('std::size_t', 'size')])
    cls.add_method('SetUid', 'void', [param('uint16_t', 'uid')])
    return