#pragma once

#include "il2cpp-config.h"

#ifndef _MSC_VER
# include <alloca.h>
#else
# include <malloc.h>
#endif

#include <stdint.h>
#include <assert.h>
#include <exception>

// System.Security.Cryptography.X509Certificates.X509ChainElementCollection
struct X509ChainElementCollection_t1625801647;
// System.Array
struct Il2CppArray;
// System.Collections.IEnumerator
struct IEnumerator_t3464575207;
// System.Security.Cryptography.X509Certificates.X509ChainElement
struct X509ChainElement_t1801824625;
// System.Object
struct Il2CppObject;
// System.Security.Cryptography.X509Certificates.X509ChainElementEnumerator
struct X509ChainElementEnumerator_t2446453973;
// System.Security.Cryptography.X509Certificates.X509Certificate2
struct X509Certificate2_t160474609;

#include "codegen/il2cpp-codegen.h"
#include "mscorlib_System_Array1146569071.h"
#include "System_System_Security_Cryptography_X509Certificate160474609.h"

// System.Void System.Security.Cryptography.X509Certificates.X509ChainElementCollection::.ctor()
extern "C"  void X509ChainElementCollection__ctor_m1079210340 (X509ChainElementCollection_t1625801647 * __this, const MethodInfo* method) IL2CPP_METHOD_ATTR;
// System.Void System.Security.Cryptography.X509Certificates.X509ChainElementCollection::System.Collections.ICollection.CopyTo(System.Array,System.Int32)
extern "C"  void X509ChainElementCollection_System_Collections_ICollection_CopyTo_m3190543456 (X509ChainElementCollection_t1625801647 * __this, Il2CppArray * ___array0, int32_t ___index1, const MethodInfo* method) IL2CPP_METHOD_ATTR;
// System.Collections.IEnumerator System.Security.Cryptography.X509Certificates.X509ChainElementCollection::System.Collections.IEnumerable.GetEnumerator()
extern "C"  Il2CppObject * X509ChainElementCollection_System_Collections_IEnumerable_GetEnumerator_m31369455 (X509ChainElementCollection_t1625801647 * __this, const MethodInfo* method) IL2CPP_METHOD_ATTR;
// System.Int32 System.Security.Cryptography.X509Certificates.X509ChainElementCollection::get_Count()
extern "C"  int32_t X509ChainElementCollection_get_Count_m3531017528 (X509ChainElementCollection_t1625801647 * __this, const MethodInfo* method) IL2CPP_METHOD_ATTR;
// System.Boolean System.Security.Cryptography.X509Certificates.X509ChainElementCollection::get_IsSynchronized()
extern "C"  bool X509ChainElementCollection_get_IsSynchronized_m2629487837 (X509ChainElementCollection_t1625801647 * __this, const MethodInfo* method) IL2CPP_METHOD_ATTR;
// System.Security.Cryptography.X509Certificates.X509ChainElement System.Security.Cryptography.X509Certificates.X509ChainElementCollection::get_Item(System.Int32)
extern "C"  X509ChainElement_t1801824625 * X509ChainElementCollection_get_Item_m553083826 (X509ChainElementCollection_t1625801647 * __this, int32_t ___index0, const MethodInfo* method) IL2CPP_METHOD_ATTR;
// System.Object System.Security.Cryptography.X509Certificates.X509ChainElementCollection::get_SyncRoot()
extern "C"  Il2CppObject * X509ChainElementCollection_get_SyncRoot_m527504827 (X509ChainElementCollection_t1625801647 * __this, const MethodInfo* method) IL2CPP_METHOD_ATTR;
// System.Security.Cryptography.X509Certificates.X509ChainElementEnumerator System.Security.Cryptography.X509Certificates.X509ChainElementCollection::GetEnumerator()
extern "C"  X509ChainElementEnumerator_t2446453973 * X509ChainElementCollection_GetEnumerator_m1375522587 (X509ChainElementCollection_t1625801647 * __this, const MethodInfo* method) IL2CPP_METHOD_ATTR;
// System.Void System.Security.Cryptography.X509Certificates.X509ChainElementCollection::Add(System.Security.Cryptography.X509Certificates.X509Certificate2)
extern "C"  void X509ChainElementCollection_Add_m2103492457 (X509ChainElementCollection_t1625801647 * __this, X509Certificate2_t160474609 * ___certificate0, const MethodInfo* method) IL2CPP_METHOD_ATTR;
// System.Void System.Security.Cryptography.X509Certificates.X509ChainElementCollection::Clear()
extern "C"  void X509ChainElementCollection_Clear_m2780310927 (X509ChainElementCollection_t1625801647 * __this, const MethodInfo* method) IL2CPP_METHOD_ATTR;
// System.Boolean System.Security.Cryptography.X509Certificates.X509ChainElementCollection::Contains(System.Security.Cryptography.X509Certificates.X509Certificate2)
extern "C"  bool X509ChainElementCollection_Contains_m150098075 (X509ChainElementCollection_t1625801647 * __this, X509Certificate2_t160474609 * ___certificate0, const MethodInfo* method) IL2CPP_METHOD_ATTR;
