#ifndef Elevated__export_types_H
#define Elevated__export_types_H
typedef HANDLE (WINAPI *DLL_Link_CreateType)();
typedef HANDLE (WINAPI *DLL_Link_CreateAsUserType)(HANDLE hToken);
typedef HANDLE (WINAPI *DLL_Link_CreateWithLogonType)(LPCWSTR, LPCWSTR, LPCWSTR, DWORD);
typedef HANDLE (WINAPI *DLL_Link_CreateWithTokenType)(HANDLE hToken, DWORD dwLogonFlags);
typedef BOOL (WINAPI *DLL_Link_DestroyType)(HANDLE hLink);
typedef BOOL (WINAPI *DLL_Link_CreateProcessAType)(HANDLE, LPCSTR, LPSTR, LPSECURITY_ATTRIBUTES, LPSECURITY_ATTRIBUTES, BOOL, DWORD, LPVOID, LPCSTR, LPSTARTUPINFOA, LPPROCESS_INFORMATION);
typedef BOOL (WINAPI *DLL_Link_CreateProcessWType)(HANDLE, LPCWSTR, LPWSTR, LPSECURITY_ATTRIBUTES, LPSECURITY_ATTRIBUTES, BOOL, DWORD, LPVOID, LPCWSTR, LPSTARTUPINFOW, LPPROCESS_INFORMATION);
typedef BOOL (WINAPI *DLL_Link_ShellExecuteExAType)(HANDLE hLink, LPSHELLEXECUTEINFOA lpExecInfo);
typedef BOOL (WINAPI *DLL_Link_ShellExecuteExWType)(HANDLE hLink, LPSHELLEXECUTEINFOW lpExecInfo);
typedef HINSTANCE (WINAPI *DLL_Link_ShellExecuteAType)(HANDLE, HWND, LPSTR, LPCSTR, LPCSTR, LPCSTR, INT);
typedef HINSTANCE (WINAPI *DLL_Link_ShellExecuteWType)(HANDLE, HWND, LPWSTR, LPCWSTR, LPCWSTR, LPCWSTR, INT);
typedef DWORD (WINAPI *DLL_Link_LoadLibraryAType)(HANDLE, LPCSTR);
typedef DWORD (WINAPI *DLL_Link_LoadLibraryWType)(HANDLE, LPCWSTR);
typedef DWORD (WINAPI *DLL_Link_SendDataType)(HANDLE, DWORD, LPCVOID, DWORD, DWORD);
typedef BOOL (WINAPI *DLL_Link_GetDataType)(HANDLE, LPVOID);
typedef BOOL (WINAPI *DLL_Link_SendFinalizeType)(HANDLE);
typedef BOOL (WINAPI *DLL_CreateProcessElevatedAType)(LPCSTR, LPSTR, LPSECURITY_ATTRIBUTES, LPSECURITY_ATTRIBUTES, BOOL, DWORD, LPVOID, LPCSTR, LPSTARTUPINFOA, LPPROCESS_INFORMATION);
typedef BOOL (WINAPI *DLL_CreateProcessElevatedWType)(LPCWSTR, LPWSTR, LPSECURITY_ATTRIBUTES, LPSECURITY_ATTRIBUTES, BOOL, DWORD, LPVOID, LPCWSTR, LPSTARTUPINFOW, LPPROCESS_INFORMATION);
typedef BOOL (WINAPI *DLL_CreateProcessAsUserElevatedAType)(HANDLE, LPCSTR, LPSTR, LPSECURITY_ATTRIBUTES, LPSECURITY_ATTRIBUTES, BOOL, DWORD, LPVOID, LPCSTR, LPSTARTUPINFOA, LPPROCESS_INFORMATION);
typedef BOOL (WINAPI *DLL_CreateProcessAsUserElevatedWType)(HANDLE, LPCWSTR, LPWSTR, LPSECURITY_ATTRIBUTES, LPSECURITY_ATTRIBUTES, BOOL, DWORD, LPVOID, LPCWSTR, LPSTARTUPINFOW, LPPROCESS_INFORMATION);
typedef BOOL (WINAPI *DLL_CreateProcessWithLogonElevatedWType)(LPCWSTR, LPCWSTR, LPCWSTR, DWORD, LPCWSTR, LPWSTR, DWORD, LPVOID, LPCWSTR, LPSTARTUPINFOW, LPPROCESS_INFORMATION);
typedef BOOL (WINAPI *DLL_CreateProcessWithTokenElevatedWType)(HANDLE, DWORD, LPCWSTR, LPWSTR, DWORD, LPVOID, LPCWSTR, LPSTARTUPINFOW, LPPROCESS_INFORMATION);
typedef LONG (WINAPI *DLL_SH_RegCreateKeyExElevatedAType)(HKEY, LPCSTR, DWORD, LPSTR, DWORD, REGSAM, LPSECURITY_ATTRIBUTES, PHKEY, LPDWORD);
typedef LONG (WINAPI *DLL_SH_RegCreateKeyExElevatedWType)(HKEY, LPCWSTR, DWORD, LPWSTR, DWORD, REGSAM, LPSECURITY_ATTRIBUTES, PHKEY, LPDWORD);
typedef LONG (WINAPI *DLL_SH_RegOpenKeyExElevatedAType)(HKEY, LPCSTR, DWORD, REGSAM, PHKEY);
typedef LONG (WINAPI *DLL_SH_RegOpenKeyExElevatedWType)(HKEY, LPCWSTR, DWORD, REGSAM, PHKEY);
typedef LONG (WINAPI *DLL_SH_RegCloseKeyElevatedType)(HKEY hKey);
typedef HINSTANCE (WINAPI *DLL_ShellExecuteElevatedAType)(HWND, LPSTR, LPCSTR, LPCSTR, LPCSTR, INT);
typedef HINSTANCE (WINAPI *DLL_ShellExecuteElevatedWType)(HWND, LPWSTR, LPCWSTR, LPCWSTR, LPCWSTR, INT);
typedef BOOL (WINAPI *DLL_ShellExecuteExElevatedAType)(LPSHELLEXECUTEINFOA);
typedef BOOL (WINAPI *DLL_ShellExecuteExElevatedWType)(LPSHELLEXECUTEINFOW);
typedef BOOL (WINAPI *DLL_IsUserAnAdminType)();
#endif