nitai/projects
rblxtool / src / ui / RblxTool / Interop / NativeMethods.cs
70 lines · 2.6 KB Raw
1using System.Runtime.InteropServices;
2
3namespace RblxTool.Interop;
4
5internal static partial class NativeMethods
6{
7 private const string Library = "rblx_core";
8
9 [LibraryImport(Library)]
10 internal static partial nint rblx_version();
11
12 [LibraryImport(Library)]
13 internal static partial void rblx_string_free(nint pointer);
14
15 [LibraryImport(Library, StringMarshalling = StringMarshalling.Utf8)]
16 internal static partial ulong rblx_engine_open(string? vaultPath, string? passphrase);
17
18 [LibraryImport(Library)]
19 internal static partial void rblx_engine_close(ulong handle);
20
21 [LibraryImport(Library)]
22 internal static partial nint rblx_accounts_list(ulong handle);
23
24 [LibraryImport(Library, StringMarshalling = StringMarshalling.Utf8)]
25 internal static partial nint rblx_account_add_cookie(ulong handle, string cookie, string? label);
26
27 [LibraryImport(Library, StringMarshalling = StringMarshalling.Utf8)]
28 internal static partial nint rblx_account_login(
29 ulong handle,
30 string identifier,
31 string password,
32 string? label);
33
34 [LibraryImport(Library, StringMarshalling = StringMarshalling.Utf8)]
35 internal static partial nint rblx_account_two_step(ulong handle, string pendingId, string code);
36
37 [LibraryImport(Library, StringMarshalling = StringMarshalling.Utf8)]
38 internal static partial nint rblx_account_oauth_url(ulong handle, string configJson);
39
40 [LibraryImport(Library, StringMarshalling = StringMarshalling.Utf8)]
41 internal static partial nint rblx_account_oauth_exchange(
42 ulong handle,
43 string configJson,
44 string code,
45 string verifier);
46
47 [LibraryImport(Library, StringMarshalling = StringMarshalling.Utf8)]
48 internal static partial int rblx_account_select(ulong handle, string id);
49
50 [LibraryImport(Library, StringMarshalling = StringMarshalling.Utf8)]
51 internal static partial int rblx_account_remove(ulong handle, string id);
52
53 [LibraryImport(Library)]
54 internal static partial nint rblx_account_overview(ulong handle);
55
56 [LibraryImport(Library, StringMarshalling = StringMarshalling.Utf8)]
57 internal static partial ulong rblx_job_start(ulong handle, string kind, string configJson);
58
59 [LibraryImport(Library)]
60 internal static partial nint rblx_job_poll(ulong handle, ulong jobId, int maxEvents);
61
62 [LibraryImport(Library)]
63 internal static partial int rblx_job_cancel(ulong handle, ulong jobId);
64
65 [LibraryImport(Library)]
66 internal static partial nint rblx_job_result(ulong handle, ulong jobId);
67
68 [LibraryImport(Library)]
69 internal static partial nint rblx_metrics(ulong handle);
70}