@rusaint/react-native 0.10.0-dev.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (79) hide show
  1. package/LICENSE +20 -0
  2. package/README.md +15 -0
  3. package/android/CMakeLists.txt +78 -0
  4. package/android/build.gradle +143 -0
  5. package/android/cpp-adapter.cpp +63 -0
  6. package/android/generated/java/dev/eatsteak/rusaint/reactnative/NativeReactNativeSpec.java +41 -0
  7. package/android/generated/jni/CMakeLists.txt +36 -0
  8. package/android/generated/jni/RNReactNativeSpec-generated.cpp +38 -0
  9. package/android/generated/jni/RNReactNativeSpec.h +31 -0
  10. package/android/generated/jni/react/renderer/components/RNReactNativeSpec/RNReactNativeSpecJSI-generated.cpp +32 -0
  11. package/android/generated/jni/react/renderer/components/RNReactNativeSpec/RNReactNativeSpecJSI.h +80 -0
  12. package/android/gradle.properties +5 -0
  13. package/android/src/main/AndroidManifest.xml +5 -0
  14. package/android/src/main/java/dev/eatsteak/rusaint/reactnative/ReactNativeModule.kt +43 -0
  15. package/android/src/main/java/dev/eatsteak/rusaint/reactnative/ReactNativePackage.kt +34 -0
  16. package/android/src/main/jniLibs/arm64-v8a/librusaint_ffi.a +0 -0
  17. package/android/src/main/jniLibs/armeabi-v7a/librusaint_ffi.a +0 -0
  18. package/android/src/main/jniLibs/x86/librusaint_ffi.a +0 -0
  19. package/android/src/main/jniLibs/x86_64/librusaint_ffi.a +0 -0
  20. package/build/RusaintReactNativeFramework.xcframework/Info.plist +43 -0
  21. package/build/RusaintReactNativeFramework.xcframework/ios-arm64/librusaint_ffi.a +0 -0
  22. package/build/RusaintReactNativeFramework.xcframework/ios-arm64-simulator/librusaint_ffi.a +0 -0
  23. package/cpp/generated/rusaint.cpp +2485 -0
  24. package/cpp/generated/rusaint.hpp +168 -0
  25. package/cpp/generated/rusaint_ffi.cpp +7397 -0
  26. package/cpp/generated/rusaint_ffi.hpp +873 -0
  27. package/cpp/rusaint-react-native.cpp +18 -0
  28. package/cpp/rusaint-react-native.h +15 -0
  29. package/ios/ReactNative.h +16 -0
  30. package/ios/ReactNative.mm +66 -0
  31. package/ios/generated/RNReactNativeSpec/RNReactNativeSpec-generated.mm +46 -0
  32. package/ios/generated/RNReactNativeSpec/RNReactNativeSpec.h +63 -0
  33. package/ios/generated/RNReactNativeSpecJSI-generated.cpp +32 -0
  34. package/ios/generated/RNReactNativeSpecJSI.h +80 -0
  35. package/lib/commonjs/NativeReactNative.ts +10 -0
  36. package/lib/commonjs/generated/rusaint-ffi.js +44 -0
  37. package/lib/commonjs/generated/rusaint-ffi.js.map +1 -0
  38. package/lib/commonjs/generated/rusaint.js +3232 -0
  39. package/lib/commonjs/generated/rusaint.js.map +1 -0
  40. package/lib/commonjs/generated/rusaint_ffi-ffi.js +44 -0
  41. package/lib/commonjs/generated/rusaint_ffi-ffi.js.map +1 -0
  42. package/lib/commonjs/generated/rusaint_ffi.js +2493 -0
  43. package/lib/commonjs/generated/rusaint_ffi.js.map +1 -0
  44. package/lib/commonjs/index.js +68 -0
  45. package/lib/commonjs/index.js.map +1 -0
  46. package/lib/commonjs/package.json +1 -0
  47. package/lib/module/NativeReactNative.ts +10 -0
  48. package/lib/module/generated/rusaint-ffi.js +43 -0
  49. package/lib/module/generated/rusaint-ffi.js.map +1 -0
  50. package/lib/module/generated/rusaint.js +3226 -0
  51. package/lib/module/generated/rusaint.js.map +1 -0
  52. package/lib/module/generated/rusaint_ffi-ffi.js +43 -0
  53. package/lib/module/generated/rusaint_ffi-ffi.js.map +1 -0
  54. package/lib/module/generated/rusaint_ffi.js +2469 -0
  55. package/lib/module/generated/rusaint_ffi.js.map +1 -0
  56. package/lib/module/index.js +40 -0
  57. package/lib/module/index.js.map +1 -0
  58. package/lib/module/package.json +1 -0
  59. package/lib/typescript/commonjs/src/NativeReactNative.d.ts +8 -0
  60. package/lib/typescript/commonjs/src/NativeReactNative.d.ts.map +1 -0
  61. package/lib/typescript/commonjs/src/generated/rusaint-ffi.d.ts +109 -0
  62. package/lib/typescript/commonjs/src/generated/rusaint-ffi.d.ts.map +1 -0
  63. package/lib/typescript/commonjs/src/generated/rusaint.d.ts +2330 -0
  64. package/lib/typescript/commonjs/src/generated/rusaint.d.ts.map +1 -0
  65. package/lib/typescript/commonjs/src/generated/rusaint_ffi-ffi.d.ts +300 -0
  66. package/lib/typescript/commonjs/src/generated/rusaint_ffi-ffi.d.ts.map +1 -0
  67. package/lib/typescript/commonjs/src/generated/rusaint_ffi.d.ts +1111 -0
  68. package/lib/typescript/commonjs/src/generated/rusaint_ffi.d.ts.map +1 -0
  69. package/lib/typescript/commonjs/src/index.d.ts +10 -0
  70. package/lib/typescript/commonjs/src/index.d.ts.map +1 -0
  71. package/package.json +185 -0
  72. package/react-native.config.js +12 -0
  73. package/rusaint-react-native.podspec +44 -0
  74. package/src/NativeReactNative.ts +10 -0
  75. package/src/generated/rusaint-ffi.ts +276 -0
  76. package/src/generated/rusaint.ts +4867 -0
  77. package/src/generated/rusaint_ffi-ffi.ts +832 -0
  78. package/src/generated/rusaint_ffi.ts +5519 -0
  79. package/src/index.tsx +38 -0
@@ -0,0 +1,2469 @@
1
+ "use strict";
2
+
3
+ // This file was autogenerated by some hot garbage in the `uniffi-bindgen-react-native` crate.
4
+ // Trust me, you don't want to mess with it!
5
+ import nativeModule from "./rusaint_ffi-ffi.js";
6
+ import { AbstractFfiConverterByteArray, FfiConverterArray, FfiConverterBool, FfiConverterFloat32, FfiConverterInt32, FfiConverterMap, FfiConverterObject, FfiConverterOptional, FfiConverterUInt32, UniffiAbstractObject, UniffiError, UniffiInternalError, UniffiRustCaller, destructorGuardSymbol, pointerLiteralSymbol, uniffiCreateFfiConverterString, uniffiCreateRecord, uniffiRustCallAsync, uniffiTypeNameSymbol, variantOrdinalSymbol } from 'uniffi-bindgen-react-native';
7
+
8
+ // Get converters from the other files, if any.
9
+ import uniffiRusaintModule from "./rusaint.js";
10
+ const {
11
+ FfiConverterTypeChapelInformation,
12
+ FfiConverterTypeClassGrade,
13
+ FfiConverterTypeCourseType,
14
+ FfiConverterTypeGradeSummary,
15
+ FfiConverterTypeGraduationRequirements,
16
+ FfiConverterTypeGraduationStudent,
17
+ FfiConverterTypeLecture,
18
+ FfiConverterTypeLectureAssessmentResult,
19
+ FfiConverterTypeLectureCategory,
20
+ FfiConverterTypePersonalCourseSchedule,
21
+ FfiConverterTypeScholarship,
22
+ FfiConverterTypeSemesterGrade,
23
+ FfiConverterTypeSemesterType,
24
+ FfiConverterTypeStudentAcademicRecords,
25
+ FfiConverterTypeStudentBankAccount,
26
+ FfiConverterTypeStudentFamily,
27
+ FfiConverterTypeStudentGraduation,
28
+ FfiConverterTypeStudentInformation,
29
+ FfiConverterTypeStudentQualification,
30
+ FfiConverterTypeStudentReligion,
31
+ FfiConverterTypeStudentResearchBankAccount,
32
+ FfiConverterTypeStudentTransferRecords,
33
+ FfiConverterTypeStudentWorkInformation
34
+ } = uniffiRusaintModule.converters;
35
+ const uniffiCaller = new UniffiRustCaller();
36
+ const uniffiIsDebug =
37
+ // @ts-ignore -- The process global might not be defined
38
+ typeof process !== 'object' ||
39
+ // @ts-ignore -- The process global might not be defined
40
+ process?.env?.NODE_ENV !== 'production' || false;
41
+ // Public interface members begin here.
42
+
43
+ /**
44
+ * Generated factory for {@link YearSemester} record objects.
45
+ */
46
+ export const YearSemester = (() => {
47
+ const defaults = () => ({});
48
+ const create = (() => {
49
+ return uniffiCreateRecord(defaults);
50
+ })();
51
+ return Object.freeze({
52
+ /**
53
+ * Create a frozen instance of {@link YearSemester}, with defaults specified
54
+ * in Rust, in the {@link rusaint_ffi} crate.
55
+ */
56
+ create,
57
+ /**
58
+ * Create a frozen instance of {@link YearSemester}, with defaults specified
59
+ * in Rust, in the {@link rusaint_ffi} crate.
60
+ */
61
+ new: create,
62
+ /**
63
+ * Defaults specified in the {@link rusaint_ffi} crate.
64
+ */
65
+ defaults: () => Object.freeze(defaults())
66
+ });
67
+ })();
68
+ const FfiConverterTypeYearSemester = (() => {
69
+ class FFIConverter extends AbstractFfiConverterByteArray {
70
+ read(from) {
71
+ return {
72
+ year: FfiConverterUInt32.read(from),
73
+ semester: FfiConverterTypeSemesterType.read(from)
74
+ };
75
+ }
76
+ write(value, into) {
77
+ FfiConverterUInt32.write(value.year, into);
78
+ FfiConverterTypeSemesterType.write(value.semester, into);
79
+ }
80
+ allocationSize(value) {
81
+ return FfiConverterUInt32.allocationSize(value.year) + FfiConverterTypeSemesterType.allocationSize(value.semester);
82
+ }
83
+ }
84
+ return new FFIConverter();
85
+ })();
86
+ const stringConverter = {
87
+ stringToBytes: s => uniffiCaller.rustCall(status => nativeModule().ubrn_uniffi_internal_fn_func_ffi__string_to_arraybuffer(s, status)),
88
+ bytesToString: ab => uniffiCaller.rustCall(status => nativeModule().ubrn_uniffi_internal_fn_func_ffi__arraybuffer_to_string(ab, status)),
89
+ stringByteLength: s => uniffiCaller.rustCall(status => nativeModule().ubrn_uniffi_internal_fn_func_ffi__string_to_byte_length(s, status))
90
+ };
91
+ const FfiConverterString = uniffiCreateFfiConverterString(stringConverter);
92
+
93
+ // Flat error type: RusaintError
94
+ export let RusaintError_Tags = /*#__PURE__*/function (RusaintError_Tags) {
95
+ RusaintError_Tags["General"] = "General";
96
+ return RusaintError_Tags;
97
+ }({});
98
+ /**
99
+ * Rusaint에서 반환하는 기본 오류
100
+ */
101
+ export const RusaintError = (() => {
102
+ class General extends UniffiError {
103
+ /**
104
+ * @private
105
+ * This field is private and should not be used.
106
+ */
107
+ [uniffiTypeNameSymbol] = 'RusaintError';
108
+ /**
109
+ * @private
110
+ * This field is private and should not be used.
111
+ */
112
+ [variantOrdinalSymbol] = 1;
113
+ tag = RusaintError_Tags.General;
114
+ constructor(message) {
115
+ super('RusaintError', 'General', message);
116
+ }
117
+ static instanceOf(e) {
118
+ return instanceOf(e) && e[variantOrdinalSymbol] === 1;
119
+ }
120
+ }
121
+
122
+ // Utility function which does not rely on instanceof.
123
+ function instanceOf(e) {
124
+ return e[uniffiTypeNameSymbol] === 'RusaintError';
125
+ }
126
+ return {
127
+ General,
128
+ instanceOf
129
+ };
130
+ })();
131
+
132
+ // Union type for RusaintError error type.
133
+
134
+ /**
135
+ * Rusaint에서 반환하는 기본 오류
136
+ */
137
+
138
+ const FfiConverterTypeRusaintError = (() => {
139
+ const intConverter = FfiConverterInt32;
140
+ class FfiConverter extends AbstractFfiConverterByteArray {
141
+ read(from) {
142
+ switch (intConverter.read(from)) {
143
+ case 1:
144
+ return new RusaintError.General(FfiConverterString.read(from));
145
+ default:
146
+ throw new UniffiInternalError.UnexpectedEnumCase();
147
+ }
148
+ }
149
+ write(value, into) {
150
+ const obj = value;
151
+ const index = obj[variantOrdinalSymbol];
152
+ intConverter.write(index, into);
153
+ }
154
+ allocationSize(value) {
155
+ return intConverter.allocationSize(0);
156
+ }
157
+ }
158
+ return new FfiConverter();
159
+ })();
160
+
161
+ // FfiConverter for Map<string, /*f32*/number>
162
+ const FfiConverterMapStringFloat32 = new FfiConverterMap(FfiConverterString, FfiConverterFloat32);
163
+
164
+ /**
165
+ * [채플정보조회](https://ecc.ssu.ac.kr/sap/bc/webdynpro/SAP/ZCMW3681)
166
+ */
167
+
168
+ /**
169
+ * [채플정보조회](https://ecc.ssu.ac.kr/sap/bc/webdynpro/SAP/ZCMW3681)
170
+ */
171
+ export class ChapelApplication extends UniffiAbstractObject {
172
+ [uniffiTypeNameSymbol] = 'ChapelApplication';
173
+ // No primary constructor declared for this class.
174
+ constructor(pointer) {
175
+ super();
176
+ this[pointerLiteralSymbol] = pointer;
177
+ this[destructorGuardSymbol] = uniffiTypeChapelApplicationObjectFactory.bless(pointer);
178
+ }
179
+
180
+ /**
181
+ * 현재 페이지에 선택된 년도와 학기를 가져옵니다. 최초 로드 시 현재 학기를 가져올 가능성이 있습니다.
182
+ * 하지만 이 애플리케이션의 다른 함수를 호출하여 한번 정보를 가져왔다면 마지막으로 가져온 정보의 학기가 반환되므로 주의하여야 하며, 신뢰할 수 있는 현재 학기의 원천으로 사용되어서는 안됩니다.
183
+ */
184
+ async getSelectedSemester(asyncOpts_) /*throws*/{
185
+ const __stack = uniffiIsDebug ? new Error().stack : undefined;
186
+ try {
187
+ return await uniffiRustCallAsync(/*rustCaller:*/uniffiCaller, /*rustFutureFunc:*/() => {
188
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_method_chapelapplication_get_selected_semester(uniffiTypeChapelApplicationObjectFactory.clonePointer(this));
189
+ }, /*pollFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_poll_rust_buffer, /*cancelFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_cancel_rust_buffer, /*completeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_complete_rust_buffer, /*freeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_free_rust_buffer, /*liftFunc:*/FfiConverterTypeYearSemester.lift.bind(FfiConverterTypeYearSemester), /*liftString:*/FfiConverterString.lift, /*asyncOpts:*/asyncOpts_, /*errorHandler:*/FfiConverterTypeRusaintError.lift.bind(FfiConverterTypeRusaintError));
190
+ } catch (__error) {
191
+ if (uniffiIsDebug && __error instanceof Error) {
192
+ __error.stack = __stack;
193
+ }
194
+ throw __error;
195
+ }
196
+ }
197
+
198
+ /**
199
+ * 해당 학기의 채플 정보를 가져옵니다.
200
+ */
201
+ async information(year, semester, asyncOpts_) /*throws*/{
202
+ const __stack = uniffiIsDebug ? new Error().stack : undefined;
203
+ try {
204
+ return await uniffiRustCallAsync(/*rustCaller:*/uniffiCaller, /*rustFutureFunc:*/() => {
205
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_method_chapelapplication_information(uniffiTypeChapelApplicationObjectFactory.clonePointer(this), FfiConverterUInt32.lower(year), FfiConverterTypeSemesterType.lower(semester));
206
+ }, /*pollFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_poll_rust_buffer, /*cancelFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_cancel_rust_buffer, /*completeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_complete_rust_buffer, /*freeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_free_rust_buffer, /*liftFunc:*/FfiConverterTypeChapelInformation.lift.bind(FfiConverterTypeChapelInformation), /*liftString:*/FfiConverterString.lift, /*asyncOpts:*/asyncOpts_, /*errorHandler:*/FfiConverterTypeRusaintError.lift.bind(FfiConverterTypeRusaintError));
207
+ } catch (__error) {
208
+ if (uniffiIsDebug && __error instanceof Error) {
209
+ __error.stack = __stack;
210
+ }
211
+ throw __error;
212
+ }
213
+ }
214
+
215
+ /**
216
+ * {@inheritDoc uniffi-bindgen-react-native#UniffiAbstractObject.uniffiDestroy}
217
+ */
218
+ uniffiDestroy() {
219
+ const ptr = this[destructorGuardSymbol];
220
+ if (ptr !== undefined) {
221
+ const pointer = uniffiTypeChapelApplicationObjectFactory.pointer(this);
222
+ uniffiTypeChapelApplicationObjectFactory.freePointer(pointer);
223
+ uniffiTypeChapelApplicationObjectFactory.unbless(ptr);
224
+ delete this[destructorGuardSymbol];
225
+ }
226
+ }
227
+ static instanceOf(obj) {
228
+ return uniffiTypeChapelApplicationObjectFactory.isConcreteType(obj);
229
+ }
230
+ }
231
+ const uniffiTypeChapelApplicationObjectFactory = {
232
+ create(pointer) {
233
+ const instance = Object.create(ChapelApplication.prototype);
234
+ instance[pointerLiteralSymbol] = pointer;
235
+ instance[destructorGuardSymbol] = this.bless(pointer);
236
+ instance[uniffiTypeNameSymbol] = 'ChapelApplication';
237
+ return instance;
238
+ },
239
+ bless(p) {
240
+ return uniffiCaller.rustCall(/*caller:*/status => nativeModule().ubrn_uniffi_internal_fn_method_chapelapplication_ffi__bless_pointer(p, status), /*liftString:*/FfiConverterString.lift);
241
+ },
242
+ unbless(ptr) {
243
+ ptr.markDestroyed();
244
+ },
245
+ pointer(obj) {
246
+ if (obj[destructorGuardSymbol] === undefined) {
247
+ throw new UniffiInternalError.UnexpectedNullPointer();
248
+ }
249
+ return obj[pointerLiteralSymbol];
250
+ },
251
+ clonePointer(obj) {
252
+ const pointer = this.pointer(obj);
253
+ return uniffiCaller.rustCall(/*caller:*/callStatus => nativeModule().ubrn_uniffi_rusaint_ffi_fn_clone_chapelapplication(pointer, callStatus), /*liftString:*/FfiConverterString.lift);
254
+ },
255
+ freePointer(pointer) {
256
+ uniffiCaller.rustCall(/*caller:*/callStatus => nativeModule().ubrn_uniffi_rusaint_ffi_fn_free_chapelapplication(pointer, callStatus), /*liftString:*/FfiConverterString.lift);
257
+ },
258
+ isConcreteType(obj) {
259
+ return obj[destructorGuardSymbol] && obj[uniffiTypeNameSymbol] === 'ChapelApplication';
260
+ }
261
+ };
262
+ // FfiConverter for ChapelApplicationInterface
263
+ const FfiConverterTypeChapelApplication = new FfiConverterObject(uniffiTypeChapelApplicationObjectFactory);
264
+
265
+ /**
266
+ * [`ChapelApplication`] 생성을 위한 빌더
267
+ */
268
+
269
+ /**
270
+ * [`ChapelApplication`] 생성을 위한 빌더
271
+ */
272
+ export class ChapelApplicationBuilder extends UniffiAbstractObject {
273
+ [uniffiTypeNameSymbol] = 'ChapelApplicationBuilder';
274
+ /**
275
+ * 새로운 [`ChapelApplicationBuilder`]를 만듭니다.
276
+ */
277
+ constructor() {
278
+ super();
279
+ const pointer = uniffiCaller.rustCall(/*caller:*/callStatus => {
280
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_constructor_chapelapplicationbuilder_new(callStatus);
281
+ }, /*liftString:*/FfiConverterString.lift);
282
+ this[pointerLiteralSymbol] = pointer;
283
+ this[destructorGuardSymbol] = uniffiTypeChapelApplicationBuilderObjectFactory.bless(pointer);
284
+ }
285
+
286
+ /**
287
+ * 세션과 함께 [`ChapelApplication`]을 만듭니다.
288
+ */
289
+ async build(session, asyncOpts_) /*throws*/{
290
+ const __stack = uniffiIsDebug ? new Error().stack : undefined;
291
+ try {
292
+ return await uniffiRustCallAsync(/*rustCaller:*/uniffiCaller, /*rustFutureFunc:*/() => {
293
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_method_chapelapplicationbuilder_build(uniffiTypeChapelApplicationBuilderObjectFactory.clonePointer(this), FfiConverterTypeUSaintSession.lower(session));
294
+ }, /*pollFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_poll_pointer, /*cancelFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_cancel_pointer, /*completeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_complete_pointer, /*freeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_free_pointer, /*liftFunc:*/FfiConverterTypeChapelApplication.lift.bind(FfiConverterTypeChapelApplication), /*liftString:*/FfiConverterString.lift, /*asyncOpts:*/asyncOpts_, /*errorHandler:*/FfiConverterTypeRusaintError.lift.bind(FfiConverterTypeRusaintError));
295
+ } catch (__error) {
296
+ if (uniffiIsDebug && __error instanceof Error) {
297
+ __error.stack = __stack;
298
+ }
299
+ throw __error;
300
+ }
301
+ }
302
+
303
+ /**
304
+ * {@inheritDoc uniffi-bindgen-react-native#UniffiAbstractObject.uniffiDestroy}
305
+ */
306
+ uniffiDestroy() {
307
+ const ptr = this[destructorGuardSymbol];
308
+ if (ptr !== undefined) {
309
+ const pointer = uniffiTypeChapelApplicationBuilderObjectFactory.pointer(this);
310
+ uniffiTypeChapelApplicationBuilderObjectFactory.freePointer(pointer);
311
+ uniffiTypeChapelApplicationBuilderObjectFactory.unbless(ptr);
312
+ delete this[destructorGuardSymbol];
313
+ }
314
+ }
315
+ static instanceOf(obj) {
316
+ return uniffiTypeChapelApplicationBuilderObjectFactory.isConcreteType(obj);
317
+ }
318
+ }
319
+ const uniffiTypeChapelApplicationBuilderObjectFactory = {
320
+ create(pointer) {
321
+ const instance = Object.create(ChapelApplicationBuilder.prototype);
322
+ instance[pointerLiteralSymbol] = pointer;
323
+ instance[destructorGuardSymbol] = this.bless(pointer);
324
+ instance[uniffiTypeNameSymbol] = 'ChapelApplicationBuilder';
325
+ return instance;
326
+ },
327
+ bless(p) {
328
+ return uniffiCaller.rustCall(/*caller:*/status => nativeModule().ubrn_uniffi_internal_fn_method_chapelapplicationbuilder_ffi__bless_pointer(p, status), /*liftString:*/FfiConverterString.lift);
329
+ },
330
+ unbless(ptr) {
331
+ ptr.markDestroyed();
332
+ },
333
+ pointer(obj) {
334
+ if (obj[destructorGuardSymbol] === undefined) {
335
+ throw new UniffiInternalError.UnexpectedNullPointer();
336
+ }
337
+ return obj[pointerLiteralSymbol];
338
+ },
339
+ clonePointer(obj) {
340
+ const pointer = this.pointer(obj);
341
+ return uniffiCaller.rustCall(/*caller:*/callStatus => nativeModule().ubrn_uniffi_rusaint_ffi_fn_clone_chapelapplicationbuilder(pointer, callStatus), /*liftString:*/FfiConverterString.lift);
342
+ },
343
+ freePointer(pointer) {
344
+ uniffiCaller.rustCall(/*caller:*/callStatus => nativeModule().ubrn_uniffi_rusaint_ffi_fn_free_chapelapplicationbuilder(pointer, callStatus), /*liftString:*/FfiConverterString.lift);
345
+ },
346
+ isConcreteType(obj) {
347
+ return obj[destructorGuardSymbol] && obj[uniffiTypeNameSymbol] === 'ChapelApplicationBuilder';
348
+ }
349
+ };
350
+ // FfiConverter for ChapelApplicationBuilderInterface
351
+ const FfiConverterTypeChapelApplicationBuilder = new FfiConverterObject(uniffiTypeChapelApplicationBuilderObjectFactory);
352
+
353
+ /**
354
+ * [학생 성적 조회](https://ecc.ssu.ac.kr/sap/bc/webdynpro/SAP/ZCMB3W0017)
355
+ */
356
+
357
+ /**
358
+ * [학생 성적 조회](https://ecc.ssu.ac.kr/sap/bc/webdynpro/SAP/ZCMB3W0017)
359
+ */
360
+ export class CourseGradesApplication extends UniffiAbstractObject {
361
+ [uniffiTypeNameSymbol] = 'CourseGradesApplication';
362
+ // No primary constructor declared for this class.
363
+ constructor(pointer) {
364
+ super();
365
+ this[pointerLiteralSymbol] = pointer;
366
+ this[destructorGuardSymbol] = uniffiTypeCourseGradesApplicationObjectFactory.bless(pointer);
367
+ }
368
+
369
+ /**
370
+ * 전체 학기의 증명 평점 정보를 가져옵니다.
371
+ */
372
+ async certificatedSummary(courseType, asyncOpts_) /*throws*/{
373
+ const __stack = uniffiIsDebug ? new Error().stack : undefined;
374
+ try {
375
+ return await uniffiRustCallAsync(/*rustCaller:*/uniffiCaller, /*rustFutureFunc:*/() => {
376
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_method_coursegradesapplication_certificated_summary(uniffiTypeCourseGradesApplicationObjectFactory.clonePointer(this), FfiConverterTypeCourseType.lower(courseType));
377
+ }, /*pollFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_poll_rust_buffer, /*cancelFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_cancel_rust_buffer, /*completeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_complete_rust_buffer, /*freeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_free_rust_buffer, /*liftFunc:*/FfiConverterTypeGradeSummary.lift.bind(FfiConverterTypeGradeSummary), /*liftString:*/FfiConverterString.lift, /*asyncOpts:*/asyncOpts_, /*errorHandler:*/FfiConverterTypeRusaintError.lift.bind(FfiConverterTypeRusaintError));
378
+ } catch (__error) {
379
+ if (uniffiIsDebug && __error instanceof Error) {
380
+ __error.stack = __stack;
381
+ }
382
+ throw __error;
383
+ }
384
+ }
385
+
386
+ /**
387
+ * 주어진 수업의 상세 성적 정보를 가져옵니다.
388
+ */
389
+ async classDetail(courseType, year, semester, code, asyncOpts_) /*throws*/{
390
+ const __stack = uniffiIsDebug ? new Error().stack : undefined;
391
+ try {
392
+ return await uniffiRustCallAsync(/*rustCaller:*/uniffiCaller, /*rustFutureFunc:*/() => {
393
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_method_coursegradesapplication_class_detail(uniffiTypeCourseGradesApplicationObjectFactory.clonePointer(this), FfiConverterTypeCourseType.lower(courseType), FfiConverterUInt32.lower(year), FfiConverterTypeSemesterType.lower(semester), FfiConverterString.lower(code));
394
+ }, /*pollFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_poll_rust_buffer, /*cancelFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_cancel_rust_buffer, /*completeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_complete_rust_buffer, /*freeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_free_rust_buffer, /*liftFunc:*/FfiConverterMapStringFloat32.lift.bind(FfiConverterMapStringFloat32), /*liftString:*/FfiConverterString.lift, /*asyncOpts:*/asyncOpts_, /*errorHandler:*/FfiConverterTypeRusaintError.lift.bind(FfiConverterTypeRusaintError));
395
+ } catch (__error) {
396
+ if (uniffiIsDebug && __error instanceof Error) {
397
+ __error.stack = __stack;
398
+ }
399
+ throw __error;
400
+ }
401
+ }
402
+
403
+ /**
404
+ * 주어진 학기의 수업별 성적을 가져옵니다. `include_details`가 `true`인 경우 수업의 상세 성적도 가져옵니다.
405
+ * 수업의 상세 성적까지 가져올 경우 상세 성적이 있는 수업의 수 만큼 서버에 요청을 보내므로 반드시 상세 성적도 한번에 가져와야 할 때에만 사용하십시오.
406
+ *
407
+ * 수업 성적을 가져온 이후 상세 성적 또한 가져오려면 `[class_detail()]`함수를 이용하십시오.
408
+ */
409
+ async classes(courseType, year, semester, includeDetails, asyncOpts_) /*throws*/{
410
+ const __stack = uniffiIsDebug ? new Error().stack : undefined;
411
+ try {
412
+ return await uniffiRustCallAsync(/*rustCaller:*/uniffiCaller, /*rustFutureFunc:*/() => {
413
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_method_coursegradesapplication_classes(uniffiTypeCourseGradesApplicationObjectFactory.clonePointer(this), FfiConverterTypeCourseType.lower(courseType), FfiConverterUInt32.lower(year), FfiConverterTypeSemesterType.lower(semester), FfiConverterBool.lower(includeDetails));
414
+ }, /*pollFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_poll_rust_buffer, /*cancelFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_cancel_rust_buffer, /*completeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_complete_rust_buffer, /*freeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_free_rust_buffer, /*liftFunc:*/FfiConverterArrayTypeClassGrade.lift.bind(FfiConverterArrayTypeClassGrade), /*liftString:*/FfiConverterString.lift, /*asyncOpts:*/asyncOpts_, /*errorHandler:*/FfiConverterTypeRusaintError.lift.bind(FfiConverterTypeRusaintError));
415
+ } catch (__error) {
416
+ if (uniffiIsDebug && __error instanceof Error) {
417
+ __error.stack = __stack;
418
+ }
419
+ throw __error;
420
+ }
421
+ }
422
+
423
+ /**
424
+ * 현재 페이지에 선택된 년도와 학기를 가져옵니다. 최초 로드 시 현재 학기를 가져올 가능성이 있습니다.
425
+ * 하지만 이 애플리케이션의 다른 함수를 호출하여 한번 정보를 가져왔다면 마지막으로 가져온 정보의 학기가 반환되므로 주의하여야 하며, 신뢰할 수 있는 현재 학기의 원천으로 사용되어서는 안됩니다.
426
+ */
427
+ async getSelectedSemester(asyncOpts_) /*throws*/{
428
+ const __stack = uniffiIsDebug ? new Error().stack : undefined;
429
+ try {
430
+ return await uniffiRustCallAsync(/*rustCaller:*/uniffiCaller, /*rustFutureFunc:*/() => {
431
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_method_coursegradesapplication_get_selected_semester(uniffiTypeCourseGradesApplicationObjectFactory.clonePointer(this));
432
+ }, /*pollFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_poll_rust_buffer, /*cancelFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_cancel_rust_buffer, /*completeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_complete_rust_buffer, /*freeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_free_rust_buffer, /*liftFunc:*/FfiConverterTypeYearSemester.lift.bind(FfiConverterTypeYearSemester), /*liftString:*/FfiConverterString.lift, /*asyncOpts:*/asyncOpts_, /*errorHandler:*/FfiConverterTypeRusaintError.lift.bind(FfiConverterTypeRusaintError));
433
+ } catch (__error) {
434
+ if (uniffiIsDebug && __error instanceof Error) {
435
+ __error.stack = __stack;
436
+ }
437
+ throw __error;
438
+ }
439
+ }
440
+
441
+ /**
442
+ * 전체 학기의 학적부 평점 정보를 가져옵니다.
443
+ */
444
+ async recordedSummary(courseType, asyncOpts_) /*throws*/{
445
+ const __stack = uniffiIsDebug ? new Error().stack : undefined;
446
+ try {
447
+ return await uniffiRustCallAsync(/*rustCaller:*/uniffiCaller, /*rustFutureFunc:*/() => {
448
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_method_coursegradesapplication_recorded_summary(uniffiTypeCourseGradesApplicationObjectFactory.clonePointer(this), FfiConverterTypeCourseType.lower(courseType));
449
+ }, /*pollFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_poll_rust_buffer, /*cancelFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_cancel_rust_buffer, /*completeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_complete_rust_buffer, /*freeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_free_rust_buffer, /*liftFunc:*/FfiConverterTypeGradeSummary.lift.bind(FfiConverterTypeGradeSummary), /*liftString:*/FfiConverterString.lift, /*asyncOpts:*/asyncOpts_, /*errorHandler:*/FfiConverterTypeRusaintError.lift.bind(FfiConverterTypeRusaintError));
450
+ } catch (__error) {
451
+ if (uniffiIsDebug && __error instanceof Error) {
452
+ __error.stack = __stack;
453
+ }
454
+ throw __error;
455
+ }
456
+ }
457
+
458
+ /**
459
+ * 학기별 평점 정보를 가져옵니다.
460
+ */
461
+ async semesters(courseType, asyncOpts_) /*throws*/{
462
+ const __stack = uniffiIsDebug ? new Error().stack : undefined;
463
+ try {
464
+ return await uniffiRustCallAsync(/*rustCaller:*/uniffiCaller, /*rustFutureFunc:*/() => {
465
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_method_coursegradesapplication_semesters(uniffiTypeCourseGradesApplicationObjectFactory.clonePointer(this), FfiConverterTypeCourseType.lower(courseType));
466
+ }, /*pollFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_poll_rust_buffer, /*cancelFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_cancel_rust_buffer, /*completeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_complete_rust_buffer, /*freeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_free_rust_buffer, /*liftFunc:*/FfiConverterArrayTypeSemesterGrade.lift.bind(FfiConverterArrayTypeSemesterGrade), /*liftString:*/FfiConverterString.lift, /*asyncOpts:*/asyncOpts_, /*errorHandler:*/FfiConverterTypeRusaintError.lift.bind(FfiConverterTypeRusaintError));
467
+ } catch (__error) {
468
+ if (uniffiIsDebug && __error instanceof Error) {
469
+ __error.stack = __stack;
470
+ }
471
+ throw __error;
472
+ }
473
+ }
474
+
475
+ /**
476
+ * {@inheritDoc uniffi-bindgen-react-native#UniffiAbstractObject.uniffiDestroy}
477
+ */
478
+ uniffiDestroy() {
479
+ const ptr = this[destructorGuardSymbol];
480
+ if (ptr !== undefined) {
481
+ const pointer = uniffiTypeCourseGradesApplicationObjectFactory.pointer(this);
482
+ uniffiTypeCourseGradesApplicationObjectFactory.freePointer(pointer);
483
+ uniffiTypeCourseGradesApplicationObjectFactory.unbless(ptr);
484
+ delete this[destructorGuardSymbol];
485
+ }
486
+ }
487
+ static instanceOf(obj) {
488
+ return uniffiTypeCourseGradesApplicationObjectFactory.isConcreteType(obj);
489
+ }
490
+ }
491
+ const uniffiTypeCourseGradesApplicationObjectFactory = {
492
+ create(pointer) {
493
+ const instance = Object.create(CourseGradesApplication.prototype);
494
+ instance[pointerLiteralSymbol] = pointer;
495
+ instance[destructorGuardSymbol] = this.bless(pointer);
496
+ instance[uniffiTypeNameSymbol] = 'CourseGradesApplication';
497
+ return instance;
498
+ },
499
+ bless(p) {
500
+ return uniffiCaller.rustCall(/*caller:*/status => nativeModule().ubrn_uniffi_internal_fn_method_coursegradesapplication_ffi__bless_pointer(p, status), /*liftString:*/FfiConverterString.lift);
501
+ },
502
+ unbless(ptr) {
503
+ ptr.markDestroyed();
504
+ },
505
+ pointer(obj) {
506
+ if (obj[destructorGuardSymbol] === undefined) {
507
+ throw new UniffiInternalError.UnexpectedNullPointer();
508
+ }
509
+ return obj[pointerLiteralSymbol];
510
+ },
511
+ clonePointer(obj) {
512
+ const pointer = this.pointer(obj);
513
+ return uniffiCaller.rustCall(/*caller:*/callStatus => nativeModule().ubrn_uniffi_rusaint_ffi_fn_clone_coursegradesapplication(pointer, callStatus), /*liftString:*/FfiConverterString.lift);
514
+ },
515
+ freePointer(pointer) {
516
+ uniffiCaller.rustCall(/*caller:*/callStatus => nativeModule().ubrn_uniffi_rusaint_ffi_fn_free_coursegradesapplication(pointer, callStatus), /*liftString:*/FfiConverterString.lift);
517
+ },
518
+ isConcreteType(obj) {
519
+ return obj[destructorGuardSymbol] && obj[uniffiTypeNameSymbol] === 'CourseGradesApplication';
520
+ }
521
+ };
522
+ // FfiConverter for CourseGradesApplicationInterface
523
+ const FfiConverterTypeCourseGradesApplication = new FfiConverterObject(uniffiTypeCourseGradesApplicationObjectFactory);
524
+
525
+ /**
526
+ * [`CourseGradesApplication`] 생성을 위한 빌더
527
+ */
528
+
529
+ /**
530
+ * [`CourseGradesApplication`] 생성을 위한 빌더
531
+ */
532
+ export class CourseGradesApplicationBuilder extends UniffiAbstractObject {
533
+ [uniffiTypeNameSymbol] = 'CourseGradesApplicationBuilder';
534
+ /**
535
+ * 새로운 [`CourseGradesApplicationBuilder`]를 만듭니다.
536
+ */
537
+ constructor() {
538
+ super();
539
+ const pointer = uniffiCaller.rustCall(/*caller:*/callStatus => {
540
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_constructor_coursegradesapplicationbuilder_new(callStatus);
541
+ }, /*liftString:*/FfiConverterString.lift);
542
+ this[pointerLiteralSymbol] = pointer;
543
+ this[destructorGuardSymbol] = uniffiTypeCourseGradesApplicationBuilderObjectFactory.bless(pointer);
544
+ }
545
+
546
+ /**
547
+ * 세션과 함께 [`CourseGradesApplication`]을 만듭니다.
548
+ */
549
+ async build(session, asyncOpts_) /*throws*/{
550
+ const __stack = uniffiIsDebug ? new Error().stack : undefined;
551
+ try {
552
+ return await uniffiRustCallAsync(/*rustCaller:*/uniffiCaller, /*rustFutureFunc:*/() => {
553
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_method_coursegradesapplicationbuilder_build(uniffiTypeCourseGradesApplicationBuilderObjectFactory.clonePointer(this), FfiConverterTypeUSaintSession.lower(session));
554
+ }, /*pollFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_poll_pointer, /*cancelFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_cancel_pointer, /*completeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_complete_pointer, /*freeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_free_pointer, /*liftFunc:*/FfiConverterTypeCourseGradesApplication.lift.bind(FfiConverterTypeCourseGradesApplication), /*liftString:*/FfiConverterString.lift, /*asyncOpts:*/asyncOpts_, /*errorHandler:*/FfiConverterTypeRusaintError.lift.bind(FfiConverterTypeRusaintError));
555
+ } catch (__error) {
556
+ if (uniffiIsDebug && __error instanceof Error) {
557
+ __error.stack = __stack;
558
+ }
559
+ throw __error;
560
+ }
561
+ }
562
+
563
+ /**
564
+ * {@inheritDoc uniffi-bindgen-react-native#UniffiAbstractObject.uniffiDestroy}
565
+ */
566
+ uniffiDestroy() {
567
+ const ptr = this[destructorGuardSymbol];
568
+ if (ptr !== undefined) {
569
+ const pointer = uniffiTypeCourseGradesApplicationBuilderObjectFactory.pointer(this);
570
+ uniffiTypeCourseGradesApplicationBuilderObjectFactory.freePointer(pointer);
571
+ uniffiTypeCourseGradesApplicationBuilderObjectFactory.unbless(ptr);
572
+ delete this[destructorGuardSymbol];
573
+ }
574
+ }
575
+ static instanceOf(obj) {
576
+ return uniffiTypeCourseGradesApplicationBuilderObjectFactory.isConcreteType(obj);
577
+ }
578
+ }
579
+ const uniffiTypeCourseGradesApplicationBuilderObjectFactory = {
580
+ create(pointer) {
581
+ const instance = Object.create(CourseGradesApplicationBuilder.prototype);
582
+ instance[pointerLiteralSymbol] = pointer;
583
+ instance[destructorGuardSymbol] = this.bless(pointer);
584
+ instance[uniffiTypeNameSymbol] = 'CourseGradesApplicationBuilder';
585
+ return instance;
586
+ },
587
+ bless(p) {
588
+ return uniffiCaller.rustCall(/*caller:*/status => nativeModule().ubrn_uniffi_internal_fn_method_coursegradesapplicationbuilder_ffi__bless_pointer(p, status), /*liftString:*/FfiConverterString.lift);
589
+ },
590
+ unbless(ptr) {
591
+ ptr.markDestroyed();
592
+ },
593
+ pointer(obj) {
594
+ if (obj[destructorGuardSymbol] === undefined) {
595
+ throw new UniffiInternalError.UnexpectedNullPointer();
596
+ }
597
+ return obj[pointerLiteralSymbol];
598
+ },
599
+ clonePointer(obj) {
600
+ const pointer = this.pointer(obj);
601
+ return uniffiCaller.rustCall(/*caller:*/callStatus => nativeModule().ubrn_uniffi_rusaint_ffi_fn_clone_coursegradesapplicationbuilder(pointer, callStatus), /*liftString:*/FfiConverterString.lift);
602
+ },
603
+ freePointer(pointer) {
604
+ uniffiCaller.rustCall(/*caller:*/callStatus => nativeModule().ubrn_uniffi_rusaint_ffi_fn_free_coursegradesapplicationbuilder(pointer, callStatus), /*liftString:*/FfiConverterString.lift);
605
+ },
606
+ isConcreteType(obj) {
607
+ return obj[destructorGuardSymbol] && obj[uniffiTypeNameSymbol] === 'CourseGradesApplicationBuilder';
608
+ }
609
+ };
610
+ // FfiConverter for CourseGradesApplicationBuilderInterface
611
+ const FfiConverterTypeCourseGradesApplicationBuilder = new FfiConverterObject(uniffiTypeCourseGradesApplicationBuilderObjectFactory);
612
+
613
+ /**
614
+ * [강의시간표](https://ecc.ssu.ac.kr/sap/bc/webdynpro/SAP/ZCMW2100)
615
+ */
616
+
617
+ /**
618
+ * [강의시간표](https://ecc.ssu.ac.kr/sap/bc/webdynpro/SAP/ZCMW2100)
619
+ */
620
+ export class CourseScheduleApplication extends UniffiAbstractObject {
621
+ [uniffiTypeNameSymbol] = 'CourseScheduleApplication';
622
+ // No primary constructor declared for this class.
623
+ constructor(pointer) {
624
+ super();
625
+ this[pointerLiteralSymbol] = pointer;
626
+ this[destructorGuardSymbol] = uniffiTypeCourseScheduleApplicationObjectFactory.bless(pointer);
627
+ }
628
+
629
+ /**
630
+ * 선택한 학기의 채플 과목 분류 목록을 가져옵니다.
631
+ */
632
+ async chapelCategories(year, semester, asyncOpts_) /*throws*/{
633
+ const __stack = uniffiIsDebug ? new Error().stack : undefined;
634
+ try {
635
+ return await uniffiRustCallAsync(/*rustCaller:*/uniffiCaller, /*rustFutureFunc:*/() => {
636
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_method_coursescheduleapplication_chapel_categories(uniffiTypeCourseScheduleApplicationObjectFactory.clonePointer(this), FfiConverterUInt32.lower(year), FfiConverterTypeSemesterType.lower(semester));
637
+ }, /*pollFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_poll_rust_buffer, /*cancelFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_cancel_rust_buffer, /*completeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_complete_rust_buffer, /*freeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_free_rust_buffer, /*liftFunc:*/FfiConverterArrayString.lift.bind(FfiConverterArrayString), /*liftString:*/FfiConverterString.lift, /*asyncOpts:*/asyncOpts_, /*errorHandler:*/FfiConverterTypeRusaintError.lift.bind(FfiConverterTypeRusaintError));
638
+ } catch (__error) {
639
+ if (uniffiIsDebug && __error instanceof Error) {
640
+ __error.stack = __stack;
641
+ }
642
+ throw __error;
643
+ }
644
+ }
645
+
646
+ /**
647
+ * 선택한 학기 기준 단과대 목록을 가져옵니다.
648
+ */
649
+ async collages(year, semester, asyncOpts_) /*throws*/{
650
+ const __stack = uniffiIsDebug ? new Error().stack : undefined;
651
+ try {
652
+ return await uniffiRustCallAsync(/*rustCaller:*/uniffiCaller, /*rustFutureFunc:*/() => {
653
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_method_coursescheduleapplication_collages(uniffiTypeCourseScheduleApplicationObjectFactory.clonePointer(this), FfiConverterUInt32.lower(year), FfiConverterTypeSemesterType.lower(semester));
654
+ }, /*pollFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_poll_rust_buffer, /*cancelFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_cancel_rust_buffer, /*completeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_complete_rust_buffer, /*freeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_free_rust_buffer, /*liftFunc:*/FfiConverterArrayString.lift.bind(FfiConverterArrayString), /*liftString:*/FfiConverterString.lift, /*asyncOpts:*/asyncOpts_, /*errorHandler:*/FfiConverterTypeRusaintError.lift.bind(FfiConverterTypeRusaintError));
655
+ } catch (__error) {
656
+ if (uniffiIsDebug && __error instanceof Error) {
657
+ __error.stack = __stack;
658
+ }
659
+ throw __error;
660
+ }
661
+ }
662
+
663
+ /**
664
+ * 선택한 학기의 연계전공 목록을 가져옵니다.
665
+ */
666
+ async connectedMajors(year, semester, asyncOpts_) /*throws*/{
667
+ const __stack = uniffiIsDebug ? new Error().stack : undefined;
668
+ try {
669
+ return await uniffiRustCallAsync(/*rustCaller:*/uniffiCaller, /*rustFutureFunc:*/() => {
670
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_method_coursescheduleapplication_connected_majors(uniffiTypeCourseScheduleApplicationObjectFactory.clonePointer(this), FfiConverterUInt32.lower(year), FfiConverterTypeSemesterType.lower(semester));
671
+ }, /*pollFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_poll_rust_buffer, /*cancelFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_cancel_rust_buffer, /*completeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_complete_rust_buffer, /*freeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_free_rust_buffer, /*liftFunc:*/FfiConverterArrayString.lift.bind(FfiConverterArrayString), /*liftString:*/FfiConverterString.lift, /*asyncOpts:*/asyncOpts_, /*errorHandler:*/FfiConverterTypeRusaintError.lift.bind(FfiConverterTypeRusaintError));
672
+ } catch (__error) {
673
+ if (uniffiIsDebug && __error instanceof Error) {
674
+ __error.stack = __stack;
675
+ }
676
+ throw __error;
677
+ }
678
+ }
679
+
680
+ /**
681
+ * 선택한 학기 기준 주어진 단과대의 학과(부) 목록을 가져옵니다.
682
+ */
683
+ async departments(year, semester, collage, asyncOpts_) /*throws*/{
684
+ const __stack = uniffiIsDebug ? new Error().stack : undefined;
685
+ try {
686
+ return await uniffiRustCallAsync(/*rustCaller:*/uniffiCaller, /*rustFutureFunc:*/() => {
687
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_method_coursescheduleapplication_departments(uniffiTypeCourseScheduleApplicationObjectFactory.clonePointer(this), FfiConverterUInt32.lower(year), FfiConverterTypeSemesterType.lower(semester), FfiConverterString.lower(collage));
688
+ }, /*pollFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_poll_rust_buffer, /*cancelFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_cancel_rust_buffer, /*completeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_complete_rust_buffer, /*freeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_free_rust_buffer, /*liftFunc:*/FfiConverterArrayString.lift.bind(FfiConverterArrayString), /*liftString:*/FfiConverterString.lift, /*asyncOpts:*/asyncOpts_, /*errorHandler:*/FfiConverterTypeRusaintError.lift.bind(FfiConverterTypeRusaintError));
689
+ } catch (__error) {
690
+ if (uniffiIsDebug && __error instanceof Error) {
691
+ __error.stack = __stack;
692
+ }
693
+ throw __error;
694
+ }
695
+ }
696
+
697
+ /**
698
+ * 학기, 학년도, 강의 분류를 통해 강의를 찾습니다.
699
+ */
700
+ async findLectures(year, semester, lectureCategory, asyncOpts_) /*throws*/{
701
+ const __stack = uniffiIsDebug ? new Error().stack : undefined;
702
+ try {
703
+ return await uniffiRustCallAsync(/*rustCaller:*/uniffiCaller, /*rustFutureFunc:*/() => {
704
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_method_coursescheduleapplication_find_lectures(uniffiTypeCourseScheduleApplicationObjectFactory.clonePointer(this), FfiConverterUInt32.lower(year), FfiConverterTypeSemesterType.lower(semester), FfiConverterTypeLectureCategory.lower(lectureCategory));
705
+ }, /*pollFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_poll_rust_buffer, /*cancelFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_cancel_rust_buffer, /*completeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_complete_rust_buffer, /*freeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_free_rust_buffer, /*liftFunc:*/FfiConverterArrayTypeLecture.lift.bind(FfiConverterArrayTypeLecture), /*liftString:*/FfiConverterString.lift, /*asyncOpts:*/asyncOpts_, /*errorHandler:*/FfiConverterTypeRusaintError.lift.bind(FfiConverterTypeRusaintError));
706
+ } catch (__error) {
707
+ if (uniffiIsDebug && __error instanceof Error) {
708
+ __error.stack = __stack;
709
+ }
710
+ throw __error;
711
+ }
712
+ }
713
+
714
+ /**
715
+ * 현재 페이지에 선택된 년도와 학기를 가져옵니다. 최초 로드 시 현재 학기를 가져올 가능성이 있습니다.
716
+ * 하지만 이 애플리케이션의 다른 함수를 호출하여 한번 정보를 가져왔다면 마지막으로 가져온 정보의 학기가 반환되므로 주의하여야 하며, 신뢰할 수 있는 현재 학기의 원천으로 사용되어서는 안됩니다.
717
+ */
718
+ async getSelectedSemester(asyncOpts_) /*throws*/{
719
+ const __stack = uniffiIsDebug ? new Error().stack : undefined;
720
+ try {
721
+ return await uniffiRustCallAsync(/*rustCaller:*/uniffiCaller, /*rustFutureFunc:*/() => {
722
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_method_coursescheduleapplication_get_selected_semester(uniffiTypeCourseScheduleApplicationObjectFactory.clonePointer(this));
723
+ }, /*pollFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_poll_rust_buffer, /*cancelFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_cancel_rust_buffer, /*completeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_complete_rust_buffer, /*freeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_free_rust_buffer, /*liftFunc:*/FfiConverterTypeYearSemester.lift.bind(FfiConverterTypeYearSemester), /*liftString:*/FfiConverterString.lift, /*asyncOpts:*/asyncOpts_, /*errorHandler:*/FfiConverterTypeRusaintError.lift.bind(FfiConverterTypeRusaintError));
724
+ } catch (__error) {
725
+ if (uniffiIsDebug && __error instanceof Error) {
726
+ __error.stack = __stack;
727
+ }
728
+ throw __error;
729
+ }
730
+ }
731
+
732
+ /**
733
+ * 선택한 학기의 대학원 단과대학 목록을 가져옵니다.
734
+ */
735
+ async graduatedCollages(year, semester, asyncOpts_) /*throws*/{
736
+ const __stack = uniffiIsDebug ? new Error().stack : undefined;
737
+ try {
738
+ return await uniffiRustCallAsync(/*rustCaller:*/uniffiCaller, /*rustFutureFunc:*/() => {
739
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_method_coursescheduleapplication_graduated_collages(uniffiTypeCourseScheduleApplicationObjectFactory.clonePointer(this), FfiConverterUInt32.lower(year), FfiConverterTypeSemesterType.lower(semester));
740
+ }, /*pollFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_poll_rust_buffer, /*cancelFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_cancel_rust_buffer, /*completeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_complete_rust_buffer, /*freeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_free_rust_buffer, /*liftFunc:*/FfiConverterArrayString.lift.bind(FfiConverterArrayString), /*liftString:*/FfiConverterString.lift, /*asyncOpts:*/asyncOpts_, /*errorHandler:*/FfiConverterTypeRusaintError.lift.bind(FfiConverterTypeRusaintError));
741
+ } catch (__error) {
742
+ if (uniffiIsDebug && __error instanceof Error) {
743
+ __error.stack = __stack;
744
+ }
745
+ throw __error;
746
+ }
747
+ }
748
+
749
+ /**
750
+ * 선택한 학기의 주어진 대학원 단과대의 학과 목록을 가져옵니다.
751
+ */
752
+ async graduatedDepartments(year, semester, collage, asyncOpts_) /*throws*/{
753
+ const __stack = uniffiIsDebug ? new Error().stack : undefined;
754
+ try {
755
+ return await uniffiRustCallAsync(/*rustCaller:*/uniffiCaller, /*rustFutureFunc:*/() => {
756
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_method_coursescheduleapplication_graduated_departments(uniffiTypeCourseScheduleApplicationObjectFactory.clonePointer(this), FfiConverterUInt32.lower(year), FfiConverterTypeSemesterType.lower(semester), FfiConverterString.lower(collage));
757
+ }, /*pollFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_poll_rust_buffer, /*cancelFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_cancel_rust_buffer, /*completeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_complete_rust_buffer, /*freeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_free_rust_buffer, /*liftFunc:*/FfiConverterArrayString.lift.bind(FfiConverterArrayString), /*liftString:*/FfiConverterString.lift, /*asyncOpts:*/asyncOpts_, /*errorHandler:*/FfiConverterTypeRusaintError.lift.bind(FfiConverterTypeRusaintError));
758
+ } catch (__error) {
759
+ if (uniffiIsDebug && __error instanceof Error) {
760
+ __error.stack = __stack;
761
+ }
762
+ throw __error;
763
+ }
764
+ }
765
+
766
+ /**
767
+ * 선택한 학과(부)의 전공 목록을 가져옵니다.
768
+ */
769
+ async majors(year, semester, collage, department, asyncOpts_) /*throws*/{
770
+ const __stack = uniffiIsDebug ? new Error().stack : undefined;
771
+ try {
772
+ return await uniffiRustCallAsync(/*rustCaller:*/uniffiCaller, /*rustFutureFunc:*/() => {
773
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_method_coursescheduleapplication_majors(uniffiTypeCourseScheduleApplicationObjectFactory.clonePointer(this), FfiConverterUInt32.lower(year), FfiConverterTypeSemesterType.lower(semester), FfiConverterString.lower(collage), FfiConverterString.lower(department));
774
+ }, /*pollFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_poll_rust_buffer, /*cancelFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_cancel_rust_buffer, /*completeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_complete_rust_buffer, /*freeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_free_rust_buffer, /*liftFunc:*/FfiConverterArrayString.lift.bind(FfiConverterArrayString), /*liftString:*/FfiConverterString.lift, /*asyncOpts:*/asyncOpts_, /*errorHandler:*/FfiConverterTypeRusaintError.lift.bind(FfiConverterTypeRusaintError));
775
+ } catch (__error) {
776
+ if (uniffiIsDebug && __error instanceof Error) {
777
+ __error.stack = __stack;
778
+ }
779
+ throw __error;
780
+ }
781
+ }
782
+
783
+ /**
784
+ * 선택한 학기의 교양선택 분야 목록을 가져옵니다.
785
+ */
786
+ async optionalElectiveCategories(year, semester, asyncOpts_) /*throws*/{
787
+ const __stack = uniffiIsDebug ? new Error().stack : undefined;
788
+ try {
789
+ return await uniffiRustCallAsync(/*rustCaller:*/uniffiCaller, /*rustFutureFunc:*/() => {
790
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_method_coursescheduleapplication_optional_elective_categories(uniffiTypeCourseScheduleApplicationObjectFactory.clonePointer(this), FfiConverterUInt32.lower(year), FfiConverterTypeSemesterType.lower(semester));
791
+ }, /*pollFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_poll_rust_buffer, /*cancelFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_cancel_rust_buffer, /*completeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_complete_rust_buffer, /*freeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_free_rust_buffer, /*liftFunc:*/FfiConverterArrayString.lift.bind(FfiConverterArrayString), /*liftString:*/FfiConverterString.lift, /*asyncOpts:*/asyncOpts_, /*errorHandler:*/FfiConverterTypeRusaintError.lift.bind(FfiConverterTypeRusaintError));
792
+ } catch (__error) {
793
+ if (uniffiIsDebug && __error instanceof Error) {
794
+ __error.stack = __stack;
795
+ }
796
+ throw __error;
797
+ }
798
+ }
799
+
800
+ /**
801
+ * 선택한 학기의 교양필수 과목명 목록을 가져옵니다.
802
+ */
803
+ async requiredElectives(year, semester, asyncOpts_) /*throws*/{
804
+ const __stack = uniffiIsDebug ? new Error().stack : undefined;
805
+ try {
806
+ return await uniffiRustCallAsync(/*rustCaller:*/uniffiCaller, /*rustFutureFunc:*/() => {
807
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_method_coursescheduleapplication_required_electives(uniffiTypeCourseScheduleApplicationObjectFactory.clonePointer(this), FfiConverterUInt32.lower(year), FfiConverterTypeSemesterType.lower(semester));
808
+ }, /*pollFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_poll_rust_buffer, /*cancelFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_cancel_rust_buffer, /*completeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_complete_rust_buffer, /*freeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_free_rust_buffer, /*liftFunc:*/FfiConverterArrayString.lift.bind(FfiConverterArrayString), /*liftString:*/FfiConverterString.lift, /*asyncOpts:*/asyncOpts_, /*errorHandler:*/FfiConverterTypeRusaintError.lift.bind(FfiConverterTypeRusaintError));
809
+ } catch (__error) {
810
+ if (uniffiIsDebug && __error instanceof Error) {
811
+ __error.stack = __stack;
812
+ }
813
+ throw __error;
814
+ }
815
+ }
816
+
817
+ /**
818
+ * 선택한 학기의 융합전공 목록을 가져옵니다.
819
+ */
820
+ async unitedMajors(year, semester, asyncOpts_) /*throws*/{
821
+ const __stack = uniffiIsDebug ? new Error().stack : undefined;
822
+ try {
823
+ return await uniffiRustCallAsync(/*rustCaller:*/uniffiCaller, /*rustFutureFunc:*/() => {
824
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_method_coursescheduleapplication_united_majors(uniffiTypeCourseScheduleApplicationObjectFactory.clonePointer(this), FfiConverterUInt32.lower(year), FfiConverterTypeSemesterType.lower(semester));
825
+ }, /*pollFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_poll_rust_buffer, /*cancelFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_cancel_rust_buffer, /*completeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_complete_rust_buffer, /*freeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_free_rust_buffer, /*liftFunc:*/FfiConverterArrayString.lift.bind(FfiConverterArrayString), /*liftString:*/FfiConverterString.lift, /*asyncOpts:*/asyncOpts_, /*errorHandler:*/FfiConverterTypeRusaintError.lift.bind(FfiConverterTypeRusaintError));
826
+ } catch (__error) {
827
+ if (uniffiIsDebug && __error instanceof Error) {
828
+ __error.stack = __stack;
829
+ }
830
+ throw __error;
831
+ }
832
+ }
833
+
834
+ /**
835
+ * {@inheritDoc uniffi-bindgen-react-native#UniffiAbstractObject.uniffiDestroy}
836
+ */
837
+ uniffiDestroy() {
838
+ const ptr = this[destructorGuardSymbol];
839
+ if (ptr !== undefined) {
840
+ const pointer = uniffiTypeCourseScheduleApplicationObjectFactory.pointer(this);
841
+ uniffiTypeCourseScheduleApplicationObjectFactory.freePointer(pointer);
842
+ uniffiTypeCourseScheduleApplicationObjectFactory.unbless(ptr);
843
+ delete this[destructorGuardSymbol];
844
+ }
845
+ }
846
+ static instanceOf(obj) {
847
+ return uniffiTypeCourseScheduleApplicationObjectFactory.isConcreteType(obj);
848
+ }
849
+ }
850
+ const uniffiTypeCourseScheduleApplicationObjectFactory = {
851
+ create(pointer) {
852
+ const instance = Object.create(CourseScheduleApplication.prototype);
853
+ instance[pointerLiteralSymbol] = pointer;
854
+ instance[destructorGuardSymbol] = this.bless(pointer);
855
+ instance[uniffiTypeNameSymbol] = 'CourseScheduleApplication';
856
+ return instance;
857
+ },
858
+ bless(p) {
859
+ return uniffiCaller.rustCall(/*caller:*/status => nativeModule().ubrn_uniffi_internal_fn_method_coursescheduleapplication_ffi__bless_pointer(p, status), /*liftString:*/FfiConverterString.lift);
860
+ },
861
+ unbless(ptr) {
862
+ ptr.markDestroyed();
863
+ },
864
+ pointer(obj) {
865
+ if (obj[destructorGuardSymbol] === undefined) {
866
+ throw new UniffiInternalError.UnexpectedNullPointer();
867
+ }
868
+ return obj[pointerLiteralSymbol];
869
+ },
870
+ clonePointer(obj) {
871
+ const pointer = this.pointer(obj);
872
+ return uniffiCaller.rustCall(/*caller:*/callStatus => nativeModule().ubrn_uniffi_rusaint_ffi_fn_clone_coursescheduleapplication(pointer, callStatus), /*liftString:*/FfiConverterString.lift);
873
+ },
874
+ freePointer(pointer) {
875
+ uniffiCaller.rustCall(/*caller:*/callStatus => nativeModule().ubrn_uniffi_rusaint_ffi_fn_free_coursescheduleapplication(pointer, callStatus), /*liftString:*/FfiConverterString.lift);
876
+ },
877
+ isConcreteType(obj) {
878
+ return obj[destructorGuardSymbol] && obj[uniffiTypeNameSymbol] === 'CourseScheduleApplication';
879
+ }
880
+ };
881
+ // FfiConverter for CourseScheduleApplicationInterface
882
+ const FfiConverterTypeCourseScheduleApplication = new FfiConverterObject(uniffiTypeCourseScheduleApplicationObjectFactory);
883
+
884
+ /**
885
+ * [`CourseScheduleApplication`] 생성을 위한 빌더
886
+ */
887
+
888
+ /**
889
+ * [`CourseScheduleApplication`] 생성을 위한 빌더
890
+ */
891
+ export class CourseScheduleApplicationBuilder extends UniffiAbstractObject {
892
+ [uniffiTypeNameSymbol] = 'CourseScheduleApplicationBuilder';
893
+ /**
894
+ * 새로운 [`CourseScheduleApplicationBuilder`]를 만듭니다.
895
+ */
896
+ constructor() {
897
+ super();
898
+ const pointer = uniffiCaller.rustCall(/*caller:*/callStatus => {
899
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_constructor_coursescheduleapplicationbuilder_new(callStatus);
900
+ }, /*liftString:*/FfiConverterString.lift);
901
+ this[pointerLiteralSymbol] = pointer;
902
+ this[destructorGuardSymbol] = uniffiTypeCourseScheduleApplicationBuilderObjectFactory.bless(pointer);
903
+ }
904
+
905
+ /**
906
+ * 세션과 함께 [`CourseScheduleApplication`]을 만듭니다.
907
+ */
908
+ async build(session, asyncOpts_) /*throws*/{
909
+ const __stack = uniffiIsDebug ? new Error().stack : undefined;
910
+ try {
911
+ return await uniffiRustCallAsync(/*rustCaller:*/uniffiCaller, /*rustFutureFunc:*/() => {
912
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_method_coursescheduleapplicationbuilder_build(uniffiTypeCourseScheduleApplicationBuilderObjectFactory.clonePointer(this), FfiConverterTypeUSaintSession.lower(session));
913
+ }, /*pollFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_poll_pointer, /*cancelFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_cancel_pointer, /*completeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_complete_pointer, /*freeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_free_pointer, /*liftFunc:*/FfiConverterTypeCourseScheduleApplication.lift.bind(FfiConverterTypeCourseScheduleApplication), /*liftString:*/FfiConverterString.lift, /*asyncOpts:*/asyncOpts_, /*errorHandler:*/FfiConverterTypeRusaintError.lift.bind(FfiConverterTypeRusaintError));
914
+ } catch (__error) {
915
+ if (uniffiIsDebug && __error instanceof Error) {
916
+ __error.stack = __stack;
917
+ }
918
+ throw __error;
919
+ }
920
+ }
921
+
922
+ /**
923
+ * {@inheritDoc uniffi-bindgen-react-native#UniffiAbstractObject.uniffiDestroy}
924
+ */
925
+ uniffiDestroy() {
926
+ const ptr = this[destructorGuardSymbol];
927
+ if (ptr !== undefined) {
928
+ const pointer = uniffiTypeCourseScheduleApplicationBuilderObjectFactory.pointer(this);
929
+ uniffiTypeCourseScheduleApplicationBuilderObjectFactory.freePointer(pointer);
930
+ uniffiTypeCourseScheduleApplicationBuilderObjectFactory.unbless(ptr);
931
+ delete this[destructorGuardSymbol];
932
+ }
933
+ }
934
+ static instanceOf(obj) {
935
+ return uniffiTypeCourseScheduleApplicationBuilderObjectFactory.isConcreteType(obj);
936
+ }
937
+ }
938
+ const uniffiTypeCourseScheduleApplicationBuilderObjectFactory = {
939
+ create(pointer) {
940
+ const instance = Object.create(CourseScheduleApplicationBuilder.prototype);
941
+ instance[pointerLiteralSymbol] = pointer;
942
+ instance[destructorGuardSymbol] = this.bless(pointer);
943
+ instance[uniffiTypeNameSymbol] = 'CourseScheduleApplicationBuilder';
944
+ return instance;
945
+ },
946
+ bless(p) {
947
+ return uniffiCaller.rustCall(/*caller:*/status => nativeModule().ubrn_uniffi_internal_fn_method_coursescheduleapplicationbuilder_ffi__bless_pointer(p, status), /*liftString:*/FfiConverterString.lift);
948
+ },
949
+ unbless(ptr) {
950
+ ptr.markDestroyed();
951
+ },
952
+ pointer(obj) {
953
+ if (obj[destructorGuardSymbol] === undefined) {
954
+ throw new UniffiInternalError.UnexpectedNullPointer();
955
+ }
956
+ return obj[pointerLiteralSymbol];
957
+ },
958
+ clonePointer(obj) {
959
+ const pointer = this.pointer(obj);
960
+ return uniffiCaller.rustCall(/*caller:*/callStatus => nativeModule().ubrn_uniffi_rusaint_ffi_fn_clone_coursescheduleapplicationbuilder(pointer, callStatus), /*liftString:*/FfiConverterString.lift);
961
+ },
962
+ freePointer(pointer) {
963
+ uniffiCaller.rustCall(/*caller:*/callStatus => nativeModule().ubrn_uniffi_rusaint_ffi_fn_free_coursescheduleapplicationbuilder(pointer, callStatus), /*liftString:*/FfiConverterString.lift);
964
+ },
965
+ isConcreteType(obj) {
966
+ return obj[destructorGuardSymbol] && obj[uniffiTypeNameSymbol] === 'CourseScheduleApplicationBuilder';
967
+ }
968
+ };
969
+ // FfiConverter for CourseScheduleApplicationBuilderInterface
970
+ const FfiConverterTypeCourseScheduleApplicationBuilder = new FfiConverterObject(uniffiTypeCourseScheduleApplicationBuilderObjectFactory);
971
+
972
+ /**
973
+ * [졸업사정표](https://ecc.ssu.ac.kr/sap/bc/webdynpro/SAP/ZCMW8015)
974
+ */
975
+
976
+ /**
977
+ * [졸업사정표](https://ecc.ssu.ac.kr/sap/bc/webdynpro/SAP/ZCMW8015)
978
+ */
979
+ export class GraduationRequirementsApplication extends UniffiAbstractObject {
980
+ [uniffiTypeNameSymbol] = 'GraduationRequirementsApplication';
981
+ // No primary constructor declared for this class.
982
+ constructor(pointer) {
983
+ super();
984
+ this[pointerLiteralSymbol] = pointer;
985
+ this[destructorGuardSymbol] = uniffiTypeGraduationRequirementsApplicationObjectFactory.bless(pointer);
986
+ }
987
+
988
+ /**
989
+ * 졸업사정 결과와 졸업 필요 요건별 충족 여부와 세부 정보를 반환합니다.
990
+ */
991
+ async requirements(asyncOpts_) /*throws*/{
992
+ const __stack = uniffiIsDebug ? new Error().stack : undefined;
993
+ try {
994
+ return await uniffiRustCallAsync(/*rustCaller:*/uniffiCaller, /*rustFutureFunc:*/() => {
995
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_method_graduationrequirementsapplication_requirements(uniffiTypeGraduationRequirementsApplicationObjectFactory.clonePointer(this));
996
+ }, /*pollFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_poll_rust_buffer, /*cancelFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_cancel_rust_buffer, /*completeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_complete_rust_buffer, /*freeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_free_rust_buffer, /*liftFunc:*/FfiConverterTypeGraduationRequirements.lift.bind(FfiConverterTypeGraduationRequirements), /*liftString:*/FfiConverterString.lift, /*asyncOpts:*/asyncOpts_, /*errorHandler:*/FfiConverterTypeRusaintError.lift.bind(FfiConverterTypeRusaintError));
997
+ } catch (__error) {
998
+ if (uniffiIsDebug && __error instanceof Error) {
999
+ __error.stack = __stack;
1000
+ }
1001
+ throw __error;
1002
+ }
1003
+ }
1004
+
1005
+ /**
1006
+ * 학생 정보를 반환합니다.
1007
+ */
1008
+ async studentInfo(asyncOpts_) /*throws*/{
1009
+ const __stack = uniffiIsDebug ? new Error().stack : undefined;
1010
+ try {
1011
+ return await uniffiRustCallAsync(/*rustCaller:*/uniffiCaller, /*rustFutureFunc:*/() => {
1012
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_method_graduationrequirementsapplication_student_info(uniffiTypeGraduationRequirementsApplicationObjectFactory.clonePointer(this));
1013
+ }, /*pollFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_poll_rust_buffer, /*cancelFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_cancel_rust_buffer, /*completeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_complete_rust_buffer, /*freeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_free_rust_buffer, /*liftFunc:*/FfiConverterTypeGraduationStudent.lift.bind(FfiConverterTypeGraduationStudent), /*liftString:*/FfiConverterString.lift, /*asyncOpts:*/asyncOpts_, /*errorHandler:*/FfiConverterTypeRusaintError.lift.bind(FfiConverterTypeRusaintError));
1014
+ } catch (__error) {
1015
+ if (uniffiIsDebug && __error instanceof Error) {
1016
+ __error.stack = __stack;
1017
+ }
1018
+ throw __error;
1019
+ }
1020
+ }
1021
+
1022
+ /**
1023
+ * {@inheritDoc uniffi-bindgen-react-native#UniffiAbstractObject.uniffiDestroy}
1024
+ */
1025
+ uniffiDestroy() {
1026
+ const ptr = this[destructorGuardSymbol];
1027
+ if (ptr !== undefined) {
1028
+ const pointer = uniffiTypeGraduationRequirementsApplicationObjectFactory.pointer(this);
1029
+ uniffiTypeGraduationRequirementsApplicationObjectFactory.freePointer(pointer);
1030
+ uniffiTypeGraduationRequirementsApplicationObjectFactory.unbless(ptr);
1031
+ delete this[destructorGuardSymbol];
1032
+ }
1033
+ }
1034
+ static instanceOf(obj) {
1035
+ return uniffiTypeGraduationRequirementsApplicationObjectFactory.isConcreteType(obj);
1036
+ }
1037
+ }
1038
+ const uniffiTypeGraduationRequirementsApplicationObjectFactory = {
1039
+ create(pointer) {
1040
+ const instance = Object.create(GraduationRequirementsApplication.prototype);
1041
+ instance[pointerLiteralSymbol] = pointer;
1042
+ instance[destructorGuardSymbol] = this.bless(pointer);
1043
+ instance[uniffiTypeNameSymbol] = 'GraduationRequirementsApplication';
1044
+ return instance;
1045
+ },
1046
+ bless(p) {
1047
+ return uniffiCaller.rustCall(/*caller:*/status => nativeModule().ubrn_uniffi_internal_fn_method_graduationrequirementsapplication_ffi__bless_pointer(p, status), /*liftString:*/FfiConverterString.lift);
1048
+ },
1049
+ unbless(ptr) {
1050
+ ptr.markDestroyed();
1051
+ },
1052
+ pointer(obj) {
1053
+ if (obj[destructorGuardSymbol] === undefined) {
1054
+ throw new UniffiInternalError.UnexpectedNullPointer();
1055
+ }
1056
+ return obj[pointerLiteralSymbol];
1057
+ },
1058
+ clonePointer(obj) {
1059
+ const pointer = this.pointer(obj);
1060
+ return uniffiCaller.rustCall(/*caller:*/callStatus => nativeModule().ubrn_uniffi_rusaint_ffi_fn_clone_graduationrequirementsapplication(pointer, callStatus), /*liftString:*/FfiConverterString.lift);
1061
+ },
1062
+ freePointer(pointer) {
1063
+ uniffiCaller.rustCall(/*caller:*/callStatus => nativeModule().ubrn_uniffi_rusaint_ffi_fn_free_graduationrequirementsapplication(pointer, callStatus), /*liftString:*/FfiConverterString.lift);
1064
+ },
1065
+ isConcreteType(obj) {
1066
+ return obj[destructorGuardSymbol] && obj[uniffiTypeNameSymbol] === 'GraduationRequirementsApplication';
1067
+ }
1068
+ };
1069
+ // FfiConverter for GraduationRequirementsApplicationInterface
1070
+ const FfiConverterTypeGraduationRequirementsApplication = new FfiConverterObject(uniffiTypeGraduationRequirementsApplicationObjectFactory);
1071
+
1072
+ /**
1073
+ * [`GraduationRequirementsApplication`] 생성을 위한 빌더
1074
+ */
1075
+
1076
+ /**
1077
+ * [`GraduationRequirementsApplication`] 생성을 위한 빌더
1078
+ */
1079
+ export class GraduationRequirementsApplicationBuilder extends UniffiAbstractObject {
1080
+ [uniffiTypeNameSymbol] = 'GraduationRequirementsApplicationBuilder';
1081
+ /**
1082
+ * 새로운 [`GraduationRequirementsApplicationBuilder`]를 만듭니다.
1083
+ */
1084
+ constructor() {
1085
+ super();
1086
+ const pointer = uniffiCaller.rustCall(/*caller:*/callStatus => {
1087
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_constructor_graduationrequirementsapplicationbuilder_new(callStatus);
1088
+ }, /*liftString:*/FfiConverterString.lift);
1089
+ this[pointerLiteralSymbol] = pointer;
1090
+ this[destructorGuardSymbol] = uniffiTypeGraduationRequirementsApplicationBuilderObjectFactory.bless(pointer);
1091
+ }
1092
+
1093
+ /**
1094
+ * 세션과 함께 [`GraduationRequirementsApplication`]을 만듭니다.
1095
+ */
1096
+ async build(session, asyncOpts_) /*throws*/{
1097
+ const __stack = uniffiIsDebug ? new Error().stack : undefined;
1098
+ try {
1099
+ return await uniffiRustCallAsync(/*rustCaller:*/uniffiCaller, /*rustFutureFunc:*/() => {
1100
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_method_graduationrequirementsapplicationbuilder_build(uniffiTypeGraduationRequirementsApplicationBuilderObjectFactory.clonePointer(this), FfiConverterTypeUSaintSession.lower(session));
1101
+ }, /*pollFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_poll_pointer, /*cancelFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_cancel_pointer, /*completeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_complete_pointer, /*freeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_free_pointer, /*liftFunc:*/FfiConverterTypeGraduationRequirementsApplication.lift.bind(FfiConverterTypeGraduationRequirementsApplication), /*liftString:*/FfiConverterString.lift, /*asyncOpts:*/asyncOpts_, /*errorHandler:*/FfiConverterTypeRusaintError.lift.bind(FfiConverterTypeRusaintError));
1102
+ } catch (__error) {
1103
+ if (uniffiIsDebug && __error instanceof Error) {
1104
+ __error.stack = __stack;
1105
+ }
1106
+ throw __error;
1107
+ }
1108
+ }
1109
+
1110
+ /**
1111
+ * {@inheritDoc uniffi-bindgen-react-native#UniffiAbstractObject.uniffiDestroy}
1112
+ */
1113
+ uniffiDestroy() {
1114
+ const ptr = this[destructorGuardSymbol];
1115
+ if (ptr !== undefined) {
1116
+ const pointer = uniffiTypeGraduationRequirementsApplicationBuilderObjectFactory.pointer(this);
1117
+ uniffiTypeGraduationRequirementsApplicationBuilderObjectFactory.freePointer(pointer);
1118
+ uniffiTypeGraduationRequirementsApplicationBuilderObjectFactory.unbless(ptr);
1119
+ delete this[destructorGuardSymbol];
1120
+ }
1121
+ }
1122
+ static instanceOf(obj) {
1123
+ return uniffiTypeGraduationRequirementsApplicationBuilderObjectFactory.isConcreteType(obj);
1124
+ }
1125
+ }
1126
+ const uniffiTypeGraduationRequirementsApplicationBuilderObjectFactory = {
1127
+ create(pointer) {
1128
+ const instance = Object.create(GraduationRequirementsApplicationBuilder.prototype);
1129
+ instance[pointerLiteralSymbol] = pointer;
1130
+ instance[destructorGuardSymbol] = this.bless(pointer);
1131
+ instance[uniffiTypeNameSymbol] = 'GraduationRequirementsApplicationBuilder';
1132
+ return instance;
1133
+ },
1134
+ bless(p) {
1135
+ return uniffiCaller.rustCall(/*caller:*/status => nativeModule().ubrn_uniffi_internal_fn_method_graduationrequirementsapplicationbuilder_ffi__bless_pointer(p, status), /*liftString:*/FfiConverterString.lift);
1136
+ },
1137
+ unbless(ptr) {
1138
+ ptr.markDestroyed();
1139
+ },
1140
+ pointer(obj) {
1141
+ if (obj[destructorGuardSymbol] === undefined) {
1142
+ throw new UniffiInternalError.UnexpectedNullPointer();
1143
+ }
1144
+ return obj[pointerLiteralSymbol];
1145
+ },
1146
+ clonePointer(obj) {
1147
+ const pointer = this.pointer(obj);
1148
+ return uniffiCaller.rustCall(/*caller:*/callStatus => nativeModule().ubrn_uniffi_rusaint_ffi_fn_clone_graduationrequirementsapplicationbuilder(pointer, callStatus), /*liftString:*/FfiConverterString.lift);
1149
+ },
1150
+ freePointer(pointer) {
1151
+ uniffiCaller.rustCall(/*caller:*/callStatus => nativeModule().ubrn_uniffi_rusaint_ffi_fn_free_graduationrequirementsapplicationbuilder(pointer, callStatus), /*liftString:*/FfiConverterString.lift);
1152
+ },
1153
+ isConcreteType(obj) {
1154
+ return obj[destructorGuardSymbol] && obj[uniffiTypeNameSymbol] === 'GraduationRequirementsApplicationBuilder';
1155
+ }
1156
+ };
1157
+ // FfiConverter for GraduationRequirementsApplicationBuilderInterface
1158
+ const FfiConverterTypeGraduationRequirementsApplicationBuilder = new FfiConverterObject(uniffiTypeGraduationRequirementsApplicationBuilderObjectFactory);
1159
+
1160
+ /**
1161
+ * [강의평가조회](https://ecc.ssu.ac.kr/sap/bc/webdynpro/SAP/ZCMB2W1010)
1162
+ */
1163
+
1164
+ /**
1165
+ * [강의평가조회](https://ecc.ssu.ac.kr/sap/bc/webdynpro/SAP/ZCMB2W1010)
1166
+ */
1167
+ export class LectureAssessmentApplication extends UniffiAbstractObject {
1168
+ [uniffiTypeNameSymbol] = 'LectureAssessmentApplication';
1169
+ // No primary constructor declared for this class.
1170
+ constructor(pointer) {
1171
+ super();
1172
+ this[pointerLiteralSymbol] = pointer;
1173
+ this[destructorGuardSymbol] = uniffiTypeLectureAssessmentApplicationObjectFactory.bless(pointer);
1174
+ }
1175
+
1176
+ /**
1177
+ * 검색 조건에 맞는 강의평가 정보를 가져옵니다.
1178
+ */
1179
+ async findAssessments(year, semester, lectureName = undefined, lectureCode = undefined, professorName = undefined, asyncOpts_) /*throws*/{
1180
+ const __stack = uniffiIsDebug ? new Error().stack : undefined;
1181
+ try {
1182
+ return await uniffiRustCallAsync(/*rustCaller:*/uniffiCaller, /*rustFutureFunc:*/() => {
1183
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_method_lectureassessmentapplication_find_assessments(uniffiTypeLectureAssessmentApplicationObjectFactory.clonePointer(this), FfiConverterUInt32.lower(year), FfiConverterTypeSemesterType.lower(semester), FfiConverterOptionalString.lower(lectureName), FfiConverterOptionalUInt32.lower(lectureCode), FfiConverterOptionalString.lower(professorName));
1184
+ }, /*pollFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_poll_rust_buffer, /*cancelFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_cancel_rust_buffer, /*completeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_complete_rust_buffer, /*freeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_free_rust_buffer, /*liftFunc:*/FfiConverterArrayTypeLectureAssessmentResult.lift.bind(FfiConverterArrayTypeLectureAssessmentResult), /*liftString:*/FfiConverterString.lift, /*asyncOpts:*/asyncOpts_, /*errorHandler:*/FfiConverterTypeRusaintError.lift.bind(FfiConverterTypeRusaintError));
1185
+ } catch (__error) {
1186
+ if (uniffiIsDebug && __error instanceof Error) {
1187
+ __error.stack = __stack;
1188
+ }
1189
+ throw __error;
1190
+ }
1191
+ }
1192
+
1193
+ /**
1194
+ * 현재 페이지에 선택된 년도와 학기를 가져옵니다. 최초 로드 시 현재 학기를 가져올 가능성이 있습니다.
1195
+ * 하지만 이 애플리케이션의 다른 함수를 호출하여 한번 정보를 가져왔다면 마지막으로 가져온 정보의 학기가 반환되므로 주의하여야 하며, 신뢰할 수 있는 현재 학기의 원천으로 사용되어서는 안됩니다.
1196
+ */
1197
+ async getSelectedSemester(asyncOpts_) /*throws*/{
1198
+ const __stack = uniffiIsDebug ? new Error().stack : undefined;
1199
+ try {
1200
+ return await uniffiRustCallAsync(/*rustCaller:*/uniffiCaller, /*rustFutureFunc:*/() => {
1201
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_method_lectureassessmentapplication_get_selected_semester(uniffiTypeLectureAssessmentApplicationObjectFactory.clonePointer(this));
1202
+ }, /*pollFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_poll_rust_buffer, /*cancelFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_cancel_rust_buffer, /*completeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_complete_rust_buffer, /*freeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_free_rust_buffer, /*liftFunc:*/FfiConverterTypeYearSemester.lift.bind(FfiConverterTypeYearSemester), /*liftString:*/FfiConverterString.lift, /*asyncOpts:*/asyncOpts_, /*errorHandler:*/FfiConverterTypeRusaintError.lift.bind(FfiConverterTypeRusaintError));
1203
+ } catch (__error) {
1204
+ if (uniffiIsDebug && __error instanceof Error) {
1205
+ __error.stack = __stack;
1206
+ }
1207
+ throw __error;
1208
+ }
1209
+ }
1210
+
1211
+ /**
1212
+ * {@inheritDoc uniffi-bindgen-react-native#UniffiAbstractObject.uniffiDestroy}
1213
+ */
1214
+ uniffiDestroy() {
1215
+ const ptr = this[destructorGuardSymbol];
1216
+ if (ptr !== undefined) {
1217
+ const pointer = uniffiTypeLectureAssessmentApplicationObjectFactory.pointer(this);
1218
+ uniffiTypeLectureAssessmentApplicationObjectFactory.freePointer(pointer);
1219
+ uniffiTypeLectureAssessmentApplicationObjectFactory.unbless(ptr);
1220
+ delete this[destructorGuardSymbol];
1221
+ }
1222
+ }
1223
+ static instanceOf(obj) {
1224
+ return uniffiTypeLectureAssessmentApplicationObjectFactory.isConcreteType(obj);
1225
+ }
1226
+ }
1227
+ const uniffiTypeLectureAssessmentApplicationObjectFactory = {
1228
+ create(pointer) {
1229
+ const instance = Object.create(LectureAssessmentApplication.prototype);
1230
+ instance[pointerLiteralSymbol] = pointer;
1231
+ instance[destructorGuardSymbol] = this.bless(pointer);
1232
+ instance[uniffiTypeNameSymbol] = 'LectureAssessmentApplication';
1233
+ return instance;
1234
+ },
1235
+ bless(p) {
1236
+ return uniffiCaller.rustCall(/*caller:*/status => nativeModule().ubrn_uniffi_internal_fn_method_lectureassessmentapplication_ffi__bless_pointer(p, status), /*liftString:*/FfiConverterString.lift);
1237
+ },
1238
+ unbless(ptr) {
1239
+ ptr.markDestroyed();
1240
+ },
1241
+ pointer(obj) {
1242
+ if (obj[destructorGuardSymbol] === undefined) {
1243
+ throw new UniffiInternalError.UnexpectedNullPointer();
1244
+ }
1245
+ return obj[pointerLiteralSymbol];
1246
+ },
1247
+ clonePointer(obj) {
1248
+ const pointer = this.pointer(obj);
1249
+ return uniffiCaller.rustCall(/*caller:*/callStatus => nativeModule().ubrn_uniffi_rusaint_ffi_fn_clone_lectureassessmentapplication(pointer, callStatus), /*liftString:*/FfiConverterString.lift);
1250
+ },
1251
+ freePointer(pointer) {
1252
+ uniffiCaller.rustCall(/*caller:*/callStatus => nativeModule().ubrn_uniffi_rusaint_ffi_fn_free_lectureassessmentapplication(pointer, callStatus), /*liftString:*/FfiConverterString.lift);
1253
+ },
1254
+ isConcreteType(obj) {
1255
+ return obj[destructorGuardSymbol] && obj[uniffiTypeNameSymbol] === 'LectureAssessmentApplication';
1256
+ }
1257
+ };
1258
+ // FfiConverter for LectureAssessmentApplicationInterface
1259
+ const FfiConverterTypeLectureAssessmentApplication = new FfiConverterObject(uniffiTypeLectureAssessmentApplicationObjectFactory);
1260
+
1261
+ /**
1262
+ * [`LectureAssessmentApplication`] 생성을 위한 빌더
1263
+ */
1264
+
1265
+ /**
1266
+ * [`LectureAssessmentApplication`] 생성을 위한 빌더
1267
+ */
1268
+ export class LectureAssessmentApplicationBuilder extends UniffiAbstractObject {
1269
+ [uniffiTypeNameSymbol] = 'LectureAssessmentApplicationBuilder';
1270
+ /**
1271
+ * 새로운 [`LectureAssessmentApplicationBuilder`]를 만듭니다.
1272
+ */
1273
+ constructor() {
1274
+ super();
1275
+ const pointer = uniffiCaller.rustCall(/*caller:*/callStatus => {
1276
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_constructor_lectureassessmentapplicationbuilder_new(callStatus);
1277
+ }, /*liftString:*/FfiConverterString.lift);
1278
+ this[pointerLiteralSymbol] = pointer;
1279
+ this[destructorGuardSymbol] = uniffiTypeLectureAssessmentApplicationBuilderObjectFactory.bless(pointer);
1280
+ }
1281
+
1282
+ /**
1283
+ * 세션과 함께 [`LectureAssessmentApplication`]을 만듭니다.
1284
+ */
1285
+ async build(session, asyncOpts_) /*throws*/{
1286
+ const __stack = uniffiIsDebug ? new Error().stack : undefined;
1287
+ try {
1288
+ return await uniffiRustCallAsync(/*rustCaller:*/uniffiCaller, /*rustFutureFunc:*/() => {
1289
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_method_lectureassessmentapplicationbuilder_build(uniffiTypeLectureAssessmentApplicationBuilderObjectFactory.clonePointer(this), FfiConverterTypeUSaintSession.lower(session));
1290
+ }, /*pollFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_poll_pointer, /*cancelFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_cancel_pointer, /*completeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_complete_pointer, /*freeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_free_pointer, /*liftFunc:*/FfiConverterTypeLectureAssessmentApplication.lift.bind(FfiConverterTypeLectureAssessmentApplication), /*liftString:*/FfiConverterString.lift, /*asyncOpts:*/asyncOpts_, /*errorHandler:*/FfiConverterTypeRusaintError.lift.bind(FfiConverterTypeRusaintError));
1291
+ } catch (__error) {
1292
+ if (uniffiIsDebug && __error instanceof Error) {
1293
+ __error.stack = __stack;
1294
+ }
1295
+ throw __error;
1296
+ }
1297
+ }
1298
+
1299
+ /**
1300
+ * {@inheritDoc uniffi-bindgen-react-native#UniffiAbstractObject.uniffiDestroy}
1301
+ */
1302
+ uniffiDestroy() {
1303
+ const ptr = this[destructorGuardSymbol];
1304
+ if (ptr !== undefined) {
1305
+ const pointer = uniffiTypeLectureAssessmentApplicationBuilderObjectFactory.pointer(this);
1306
+ uniffiTypeLectureAssessmentApplicationBuilderObjectFactory.freePointer(pointer);
1307
+ uniffiTypeLectureAssessmentApplicationBuilderObjectFactory.unbless(ptr);
1308
+ delete this[destructorGuardSymbol];
1309
+ }
1310
+ }
1311
+ static instanceOf(obj) {
1312
+ return uniffiTypeLectureAssessmentApplicationBuilderObjectFactory.isConcreteType(obj);
1313
+ }
1314
+ }
1315
+ const uniffiTypeLectureAssessmentApplicationBuilderObjectFactory = {
1316
+ create(pointer) {
1317
+ const instance = Object.create(LectureAssessmentApplicationBuilder.prototype);
1318
+ instance[pointerLiteralSymbol] = pointer;
1319
+ instance[destructorGuardSymbol] = this.bless(pointer);
1320
+ instance[uniffiTypeNameSymbol] = 'LectureAssessmentApplicationBuilder';
1321
+ return instance;
1322
+ },
1323
+ bless(p) {
1324
+ return uniffiCaller.rustCall(/*caller:*/status => nativeModule().ubrn_uniffi_internal_fn_method_lectureassessmentapplicationbuilder_ffi__bless_pointer(p, status), /*liftString:*/FfiConverterString.lift);
1325
+ },
1326
+ unbless(ptr) {
1327
+ ptr.markDestroyed();
1328
+ },
1329
+ pointer(obj) {
1330
+ if (obj[destructorGuardSymbol] === undefined) {
1331
+ throw new UniffiInternalError.UnexpectedNullPointer();
1332
+ }
1333
+ return obj[pointerLiteralSymbol];
1334
+ },
1335
+ clonePointer(obj) {
1336
+ const pointer = this.pointer(obj);
1337
+ return uniffiCaller.rustCall(/*caller:*/callStatus => nativeModule().ubrn_uniffi_rusaint_ffi_fn_clone_lectureassessmentapplicationbuilder(pointer, callStatus), /*liftString:*/FfiConverterString.lift);
1338
+ },
1339
+ freePointer(pointer) {
1340
+ uniffiCaller.rustCall(/*caller:*/callStatus => nativeModule().ubrn_uniffi_rusaint_ffi_fn_free_lectureassessmentapplicationbuilder(pointer, callStatus), /*liftString:*/FfiConverterString.lift);
1341
+ },
1342
+ isConcreteType(obj) {
1343
+ return obj[destructorGuardSymbol] && obj[uniffiTypeNameSymbol] === 'LectureAssessmentApplicationBuilder';
1344
+ }
1345
+ };
1346
+ // FfiConverter for LectureAssessmentApplicationBuilderInterface
1347
+ const FfiConverterTypeLectureAssessmentApplicationBuilder = new FfiConverterObject(uniffiTypeLectureAssessmentApplicationBuilderObjectFactory);
1348
+
1349
+ /**
1350
+ * [개인수업시간표](https://ecc.ssu.ac.kr/sap/bc/webdynpro/SAP/ZCMW2102)
1351
+ */
1352
+
1353
+ /**
1354
+ * [개인수업시간표](https://ecc.ssu.ac.kr/sap/bc/webdynpro/SAP/ZCMW2102)
1355
+ */
1356
+ export class PersonalCourseScheduleApplication extends UniffiAbstractObject {
1357
+ [uniffiTypeNameSymbol] = 'PersonalCourseScheduleApplication';
1358
+ // No primary constructor declared for this class.
1359
+ constructor(pointer) {
1360
+ super();
1361
+ this[pointerLiteralSymbol] = pointer;
1362
+ this[destructorGuardSymbol] = uniffiTypePersonalCourseScheduleApplicationObjectFactory.bless(pointer);
1363
+ }
1364
+
1365
+ /**
1366
+ * 현재 페이지에 선택된 년도와 학기를 가져옵니다. 최초 로드 시 현재 학기를 가져올 가능성이 있습니다.
1367
+ * 하지만 이 애플리케이션의 다른 함수를 호출하여 한번 정보를 가져왔다면 마지막으로 가져온 정보의 학기가 반환되므로 주의하여야 하며, 신뢰할 수 있는 현재 학기의 원천으로 사용되어서는 안됩니다.
1368
+ */
1369
+ async getSelectedSemester(asyncOpts_) /*throws*/{
1370
+ const __stack = uniffiIsDebug ? new Error().stack : undefined;
1371
+ try {
1372
+ return await uniffiRustCallAsync(/*rustCaller:*/uniffiCaller, /*rustFutureFunc:*/() => {
1373
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_method_personalcoursescheduleapplication_get_selected_semester(uniffiTypePersonalCourseScheduleApplicationObjectFactory.clonePointer(this));
1374
+ }, /*pollFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_poll_rust_buffer, /*cancelFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_cancel_rust_buffer, /*completeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_complete_rust_buffer, /*freeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_free_rust_buffer, /*liftFunc:*/FfiConverterTypeYearSemester.lift.bind(FfiConverterTypeYearSemester), /*liftString:*/FfiConverterString.lift, /*asyncOpts:*/asyncOpts_, /*errorHandler:*/FfiConverterTypeRusaintError.lift.bind(FfiConverterTypeRusaintError));
1375
+ } catch (__error) {
1376
+ if (uniffiIsDebug && __error instanceof Error) {
1377
+ __error.stack = __stack;
1378
+ }
1379
+ throw __error;
1380
+ }
1381
+ }
1382
+
1383
+ /**
1384
+ * 해당 학기의 시간표 정보를 가져옵니다.
1385
+ */
1386
+ async schedule(year, semester, asyncOpts_) /*throws*/{
1387
+ const __stack = uniffiIsDebug ? new Error().stack : undefined;
1388
+ try {
1389
+ return await uniffiRustCallAsync(/*rustCaller:*/uniffiCaller, /*rustFutureFunc:*/() => {
1390
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_method_personalcoursescheduleapplication_schedule(uniffiTypePersonalCourseScheduleApplicationObjectFactory.clonePointer(this), FfiConverterUInt32.lower(year), FfiConverterTypeSemesterType.lower(semester));
1391
+ }, /*pollFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_poll_rust_buffer, /*cancelFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_cancel_rust_buffer, /*completeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_complete_rust_buffer, /*freeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_free_rust_buffer, /*liftFunc:*/FfiConverterTypePersonalCourseSchedule.lift.bind(FfiConverterTypePersonalCourseSchedule), /*liftString:*/FfiConverterString.lift, /*asyncOpts:*/asyncOpts_, /*errorHandler:*/FfiConverterTypeRusaintError.lift.bind(FfiConverterTypeRusaintError));
1392
+ } catch (__error) {
1393
+ if (uniffiIsDebug && __error instanceof Error) {
1394
+ __error.stack = __stack;
1395
+ }
1396
+ throw __error;
1397
+ }
1398
+ }
1399
+
1400
+ /**
1401
+ * {@inheritDoc uniffi-bindgen-react-native#UniffiAbstractObject.uniffiDestroy}
1402
+ */
1403
+ uniffiDestroy() {
1404
+ const ptr = this[destructorGuardSymbol];
1405
+ if (ptr !== undefined) {
1406
+ const pointer = uniffiTypePersonalCourseScheduleApplicationObjectFactory.pointer(this);
1407
+ uniffiTypePersonalCourseScheduleApplicationObjectFactory.freePointer(pointer);
1408
+ uniffiTypePersonalCourseScheduleApplicationObjectFactory.unbless(ptr);
1409
+ delete this[destructorGuardSymbol];
1410
+ }
1411
+ }
1412
+ static instanceOf(obj) {
1413
+ return uniffiTypePersonalCourseScheduleApplicationObjectFactory.isConcreteType(obj);
1414
+ }
1415
+ }
1416
+ const uniffiTypePersonalCourseScheduleApplicationObjectFactory = {
1417
+ create(pointer) {
1418
+ const instance = Object.create(PersonalCourseScheduleApplication.prototype);
1419
+ instance[pointerLiteralSymbol] = pointer;
1420
+ instance[destructorGuardSymbol] = this.bless(pointer);
1421
+ instance[uniffiTypeNameSymbol] = 'PersonalCourseScheduleApplication';
1422
+ return instance;
1423
+ },
1424
+ bless(p) {
1425
+ return uniffiCaller.rustCall(/*caller:*/status => nativeModule().ubrn_uniffi_internal_fn_method_personalcoursescheduleapplication_ffi__bless_pointer(p, status), /*liftString:*/FfiConverterString.lift);
1426
+ },
1427
+ unbless(ptr) {
1428
+ ptr.markDestroyed();
1429
+ },
1430
+ pointer(obj) {
1431
+ if (obj[destructorGuardSymbol] === undefined) {
1432
+ throw new UniffiInternalError.UnexpectedNullPointer();
1433
+ }
1434
+ return obj[pointerLiteralSymbol];
1435
+ },
1436
+ clonePointer(obj) {
1437
+ const pointer = this.pointer(obj);
1438
+ return uniffiCaller.rustCall(/*caller:*/callStatus => nativeModule().ubrn_uniffi_rusaint_ffi_fn_clone_personalcoursescheduleapplication(pointer, callStatus), /*liftString:*/FfiConverterString.lift);
1439
+ },
1440
+ freePointer(pointer) {
1441
+ uniffiCaller.rustCall(/*caller:*/callStatus => nativeModule().ubrn_uniffi_rusaint_ffi_fn_free_personalcoursescheduleapplication(pointer, callStatus), /*liftString:*/FfiConverterString.lift);
1442
+ },
1443
+ isConcreteType(obj) {
1444
+ return obj[destructorGuardSymbol] && obj[uniffiTypeNameSymbol] === 'PersonalCourseScheduleApplication';
1445
+ }
1446
+ };
1447
+ // FfiConverter for PersonalCourseScheduleApplicationInterface
1448
+ const FfiConverterTypePersonalCourseScheduleApplication = new FfiConverterObject(uniffiTypePersonalCourseScheduleApplicationObjectFactory);
1449
+
1450
+ /**
1451
+ * [`PersonalCourseScheduleApplication`] 생성을 위한 빌더
1452
+ */
1453
+
1454
+ /**
1455
+ * [`PersonalCourseScheduleApplication`] 생성을 위한 빌더
1456
+ */
1457
+ export class PersonalCourseScheduleApplicationBuilder extends UniffiAbstractObject {
1458
+ [uniffiTypeNameSymbol] = 'PersonalCourseScheduleApplicationBuilder';
1459
+ /**
1460
+ * 새로운 [`PersonalCourseScheduleApplicationBuilder`]를 만듭니다.
1461
+ */
1462
+ constructor() {
1463
+ super();
1464
+ const pointer = uniffiCaller.rustCall(/*caller:*/callStatus => {
1465
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_constructor_personalcoursescheduleapplicationbuilder_new(callStatus);
1466
+ }, /*liftString:*/FfiConverterString.lift);
1467
+ this[pointerLiteralSymbol] = pointer;
1468
+ this[destructorGuardSymbol] = uniffiTypePersonalCourseScheduleApplicationBuilderObjectFactory.bless(pointer);
1469
+ }
1470
+
1471
+ /**
1472
+ * 세션과 함께 [`PersonalCourseScheduleApplication`]을 만듭니다.
1473
+ */
1474
+ async build(session, asyncOpts_) /*throws*/{
1475
+ const __stack = uniffiIsDebug ? new Error().stack : undefined;
1476
+ try {
1477
+ return await uniffiRustCallAsync(/*rustCaller:*/uniffiCaller, /*rustFutureFunc:*/() => {
1478
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_method_personalcoursescheduleapplicationbuilder_build(uniffiTypePersonalCourseScheduleApplicationBuilderObjectFactory.clonePointer(this), FfiConverterTypeUSaintSession.lower(session));
1479
+ }, /*pollFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_poll_pointer, /*cancelFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_cancel_pointer, /*completeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_complete_pointer, /*freeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_free_pointer, /*liftFunc:*/FfiConverterTypePersonalCourseScheduleApplication.lift.bind(FfiConverterTypePersonalCourseScheduleApplication), /*liftString:*/FfiConverterString.lift, /*asyncOpts:*/asyncOpts_, /*errorHandler:*/FfiConverterTypeRusaintError.lift.bind(FfiConverterTypeRusaintError));
1480
+ } catch (__error) {
1481
+ if (uniffiIsDebug && __error instanceof Error) {
1482
+ __error.stack = __stack;
1483
+ }
1484
+ throw __error;
1485
+ }
1486
+ }
1487
+
1488
+ /**
1489
+ * {@inheritDoc uniffi-bindgen-react-native#UniffiAbstractObject.uniffiDestroy}
1490
+ */
1491
+ uniffiDestroy() {
1492
+ const ptr = this[destructorGuardSymbol];
1493
+ if (ptr !== undefined) {
1494
+ const pointer = uniffiTypePersonalCourseScheduleApplicationBuilderObjectFactory.pointer(this);
1495
+ uniffiTypePersonalCourseScheduleApplicationBuilderObjectFactory.freePointer(pointer);
1496
+ uniffiTypePersonalCourseScheduleApplicationBuilderObjectFactory.unbless(ptr);
1497
+ delete this[destructorGuardSymbol];
1498
+ }
1499
+ }
1500
+ static instanceOf(obj) {
1501
+ return uniffiTypePersonalCourseScheduleApplicationBuilderObjectFactory.isConcreteType(obj);
1502
+ }
1503
+ }
1504
+ const uniffiTypePersonalCourseScheduleApplicationBuilderObjectFactory = {
1505
+ create(pointer) {
1506
+ const instance = Object.create(PersonalCourseScheduleApplicationBuilder.prototype);
1507
+ instance[pointerLiteralSymbol] = pointer;
1508
+ instance[destructorGuardSymbol] = this.bless(pointer);
1509
+ instance[uniffiTypeNameSymbol] = 'PersonalCourseScheduleApplicationBuilder';
1510
+ return instance;
1511
+ },
1512
+ bless(p) {
1513
+ return uniffiCaller.rustCall(/*caller:*/status => nativeModule().ubrn_uniffi_internal_fn_method_personalcoursescheduleapplicationbuilder_ffi__bless_pointer(p, status), /*liftString:*/FfiConverterString.lift);
1514
+ },
1515
+ unbless(ptr) {
1516
+ ptr.markDestroyed();
1517
+ },
1518
+ pointer(obj) {
1519
+ if (obj[destructorGuardSymbol] === undefined) {
1520
+ throw new UniffiInternalError.UnexpectedNullPointer();
1521
+ }
1522
+ return obj[pointerLiteralSymbol];
1523
+ },
1524
+ clonePointer(obj) {
1525
+ const pointer = this.pointer(obj);
1526
+ return uniffiCaller.rustCall(/*caller:*/callStatus => nativeModule().ubrn_uniffi_rusaint_ffi_fn_clone_personalcoursescheduleapplicationbuilder(pointer, callStatus), /*liftString:*/FfiConverterString.lift);
1527
+ },
1528
+ freePointer(pointer) {
1529
+ uniffiCaller.rustCall(/*caller:*/callStatus => nativeModule().ubrn_uniffi_rusaint_ffi_fn_free_personalcoursescheduleapplicationbuilder(pointer, callStatus), /*liftString:*/FfiConverterString.lift);
1530
+ },
1531
+ isConcreteType(obj) {
1532
+ return obj[destructorGuardSymbol] && obj[uniffiTypeNameSymbol] === 'PersonalCourseScheduleApplicationBuilder';
1533
+ }
1534
+ };
1535
+ // FfiConverter for PersonalCourseScheduleApplicationBuilderInterface
1536
+ const FfiConverterTypePersonalCourseScheduleApplicationBuilder = new FfiConverterObject(uniffiTypePersonalCourseScheduleApplicationBuilderObjectFactory);
1537
+
1538
+ /**
1539
+ * [장학금수혜내역조회](https://ecc.ssu.ac.kr/sap/bc/webdynpro/SAP/ZCMW7530n)
1540
+ */
1541
+
1542
+ /**
1543
+ * [장학금수혜내역조회](https://ecc.ssu.ac.kr/sap/bc/webdynpro/SAP/ZCMW7530n)
1544
+ */
1545
+ export class ScholarshipsApplication extends UniffiAbstractObject {
1546
+ [uniffiTypeNameSymbol] = 'ScholarshipsApplication';
1547
+ // No primary constructor declared for this class.
1548
+ constructor(pointer) {
1549
+ super();
1550
+ this[pointerLiteralSymbol] = pointer;
1551
+ this[destructorGuardSymbol] = uniffiTypeScholarshipsApplicationObjectFactory.bless(pointer);
1552
+ }
1553
+
1554
+ /**
1555
+ * 장학금 수혜 내역을 가져옵니다.
1556
+ */
1557
+ async scholarships(asyncOpts_) /*throws*/{
1558
+ const __stack = uniffiIsDebug ? new Error().stack : undefined;
1559
+ try {
1560
+ return await uniffiRustCallAsync(/*rustCaller:*/uniffiCaller, /*rustFutureFunc:*/() => {
1561
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_method_scholarshipsapplication_scholarships(uniffiTypeScholarshipsApplicationObjectFactory.clonePointer(this));
1562
+ }, /*pollFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_poll_rust_buffer, /*cancelFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_cancel_rust_buffer, /*completeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_complete_rust_buffer, /*freeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_free_rust_buffer, /*liftFunc:*/FfiConverterArrayTypeScholarship.lift.bind(FfiConverterArrayTypeScholarship), /*liftString:*/FfiConverterString.lift, /*asyncOpts:*/asyncOpts_, /*errorHandler:*/FfiConverterTypeRusaintError.lift.bind(FfiConverterTypeRusaintError));
1563
+ } catch (__error) {
1564
+ if (uniffiIsDebug && __error instanceof Error) {
1565
+ __error.stack = __stack;
1566
+ }
1567
+ throw __error;
1568
+ }
1569
+ }
1570
+
1571
+ /**
1572
+ * {@inheritDoc uniffi-bindgen-react-native#UniffiAbstractObject.uniffiDestroy}
1573
+ */
1574
+ uniffiDestroy() {
1575
+ const ptr = this[destructorGuardSymbol];
1576
+ if (ptr !== undefined) {
1577
+ const pointer = uniffiTypeScholarshipsApplicationObjectFactory.pointer(this);
1578
+ uniffiTypeScholarshipsApplicationObjectFactory.freePointer(pointer);
1579
+ uniffiTypeScholarshipsApplicationObjectFactory.unbless(ptr);
1580
+ delete this[destructorGuardSymbol];
1581
+ }
1582
+ }
1583
+ static instanceOf(obj) {
1584
+ return uniffiTypeScholarshipsApplicationObjectFactory.isConcreteType(obj);
1585
+ }
1586
+ }
1587
+ const uniffiTypeScholarshipsApplicationObjectFactory = {
1588
+ create(pointer) {
1589
+ const instance = Object.create(ScholarshipsApplication.prototype);
1590
+ instance[pointerLiteralSymbol] = pointer;
1591
+ instance[destructorGuardSymbol] = this.bless(pointer);
1592
+ instance[uniffiTypeNameSymbol] = 'ScholarshipsApplication';
1593
+ return instance;
1594
+ },
1595
+ bless(p) {
1596
+ return uniffiCaller.rustCall(/*caller:*/status => nativeModule().ubrn_uniffi_internal_fn_method_scholarshipsapplication_ffi__bless_pointer(p, status), /*liftString:*/FfiConverterString.lift);
1597
+ },
1598
+ unbless(ptr) {
1599
+ ptr.markDestroyed();
1600
+ },
1601
+ pointer(obj) {
1602
+ if (obj[destructorGuardSymbol] === undefined) {
1603
+ throw new UniffiInternalError.UnexpectedNullPointer();
1604
+ }
1605
+ return obj[pointerLiteralSymbol];
1606
+ },
1607
+ clonePointer(obj) {
1608
+ const pointer = this.pointer(obj);
1609
+ return uniffiCaller.rustCall(/*caller:*/callStatus => nativeModule().ubrn_uniffi_rusaint_ffi_fn_clone_scholarshipsapplication(pointer, callStatus), /*liftString:*/FfiConverterString.lift);
1610
+ },
1611
+ freePointer(pointer) {
1612
+ uniffiCaller.rustCall(/*caller:*/callStatus => nativeModule().ubrn_uniffi_rusaint_ffi_fn_free_scholarshipsapplication(pointer, callStatus), /*liftString:*/FfiConverterString.lift);
1613
+ },
1614
+ isConcreteType(obj) {
1615
+ return obj[destructorGuardSymbol] && obj[uniffiTypeNameSymbol] === 'ScholarshipsApplication';
1616
+ }
1617
+ };
1618
+ // FfiConverter for ScholarshipsApplicationInterface
1619
+ const FfiConverterTypeScholarshipsApplication = new FfiConverterObject(uniffiTypeScholarshipsApplicationObjectFactory);
1620
+
1621
+ /**
1622
+ * [`ScholarshipsApplication`] 생성을 위한 빌더
1623
+ */
1624
+
1625
+ /**
1626
+ * [`ScholarshipsApplication`] 생성을 위한 빌더
1627
+ */
1628
+ export class ScholarshipsApplicationBuilder extends UniffiAbstractObject {
1629
+ [uniffiTypeNameSymbol] = 'ScholarshipsApplicationBuilder';
1630
+ /**
1631
+ * 새로운 [`ScholarshipsApplicationBuilder`]를 만듭니다.
1632
+ */
1633
+ constructor() {
1634
+ super();
1635
+ const pointer = uniffiCaller.rustCall(/*caller:*/callStatus => {
1636
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_constructor_scholarshipsapplicationbuilder_new(callStatus);
1637
+ }, /*liftString:*/FfiConverterString.lift);
1638
+ this[pointerLiteralSymbol] = pointer;
1639
+ this[destructorGuardSymbol] = uniffiTypeScholarshipsApplicationBuilderObjectFactory.bless(pointer);
1640
+ }
1641
+
1642
+ /**
1643
+ * 세션과 함께 [`ScholarshipsApplication`]을 만듭니다.
1644
+ */
1645
+ async build(session, asyncOpts_) /*throws*/{
1646
+ const __stack = uniffiIsDebug ? new Error().stack : undefined;
1647
+ try {
1648
+ return await uniffiRustCallAsync(/*rustCaller:*/uniffiCaller, /*rustFutureFunc:*/() => {
1649
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_method_scholarshipsapplicationbuilder_build(uniffiTypeScholarshipsApplicationBuilderObjectFactory.clonePointer(this), FfiConverterTypeUSaintSession.lower(session));
1650
+ }, /*pollFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_poll_pointer, /*cancelFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_cancel_pointer, /*completeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_complete_pointer, /*freeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_free_pointer, /*liftFunc:*/FfiConverterTypeScholarshipsApplication.lift.bind(FfiConverterTypeScholarshipsApplication), /*liftString:*/FfiConverterString.lift, /*asyncOpts:*/asyncOpts_, /*errorHandler:*/FfiConverterTypeRusaintError.lift.bind(FfiConverterTypeRusaintError));
1651
+ } catch (__error) {
1652
+ if (uniffiIsDebug && __error instanceof Error) {
1653
+ __error.stack = __stack;
1654
+ }
1655
+ throw __error;
1656
+ }
1657
+ }
1658
+
1659
+ /**
1660
+ * {@inheritDoc uniffi-bindgen-react-native#UniffiAbstractObject.uniffiDestroy}
1661
+ */
1662
+ uniffiDestroy() {
1663
+ const ptr = this[destructorGuardSymbol];
1664
+ if (ptr !== undefined) {
1665
+ const pointer = uniffiTypeScholarshipsApplicationBuilderObjectFactory.pointer(this);
1666
+ uniffiTypeScholarshipsApplicationBuilderObjectFactory.freePointer(pointer);
1667
+ uniffiTypeScholarshipsApplicationBuilderObjectFactory.unbless(ptr);
1668
+ delete this[destructorGuardSymbol];
1669
+ }
1670
+ }
1671
+ static instanceOf(obj) {
1672
+ return uniffiTypeScholarshipsApplicationBuilderObjectFactory.isConcreteType(obj);
1673
+ }
1674
+ }
1675
+ const uniffiTypeScholarshipsApplicationBuilderObjectFactory = {
1676
+ create(pointer) {
1677
+ const instance = Object.create(ScholarshipsApplicationBuilder.prototype);
1678
+ instance[pointerLiteralSymbol] = pointer;
1679
+ instance[destructorGuardSymbol] = this.bless(pointer);
1680
+ instance[uniffiTypeNameSymbol] = 'ScholarshipsApplicationBuilder';
1681
+ return instance;
1682
+ },
1683
+ bless(p) {
1684
+ return uniffiCaller.rustCall(/*caller:*/status => nativeModule().ubrn_uniffi_internal_fn_method_scholarshipsapplicationbuilder_ffi__bless_pointer(p, status), /*liftString:*/FfiConverterString.lift);
1685
+ },
1686
+ unbless(ptr) {
1687
+ ptr.markDestroyed();
1688
+ },
1689
+ pointer(obj) {
1690
+ if (obj[destructorGuardSymbol] === undefined) {
1691
+ throw new UniffiInternalError.UnexpectedNullPointer();
1692
+ }
1693
+ return obj[pointerLiteralSymbol];
1694
+ },
1695
+ clonePointer(obj) {
1696
+ const pointer = this.pointer(obj);
1697
+ return uniffiCaller.rustCall(/*caller:*/callStatus => nativeModule().ubrn_uniffi_rusaint_ffi_fn_clone_scholarshipsapplicationbuilder(pointer, callStatus), /*liftString:*/FfiConverterString.lift);
1698
+ },
1699
+ freePointer(pointer) {
1700
+ uniffiCaller.rustCall(/*caller:*/callStatus => nativeModule().ubrn_uniffi_rusaint_ffi_fn_free_scholarshipsapplicationbuilder(pointer, callStatus), /*liftString:*/FfiConverterString.lift);
1701
+ },
1702
+ isConcreteType(obj) {
1703
+ return obj[destructorGuardSymbol] && obj[uniffiTypeNameSymbol] === 'ScholarshipsApplicationBuilder';
1704
+ }
1705
+ };
1706
+ // FfiConverter for ScholarshipsApplicationBuilderInterface
1707
+ const FfiConverterTypeScholarshipsApplicationBuilder = new FfiConverterObject(uniffiTypeScholarshipsApplicationBuilderObjectFactory);
1708
+
1709
+ /**
1710
+ * [학생 정보 수정 및 조회](https://ecc.ssu.ac.kr/sap/bc/webdynpro/SAP/ZCMW1001n)
1711
+ */
1712
+
1713
+ /**
1714
+ * [학생 정보 수정 및 조회](https://ecc.ssu.ac.kr/sap/bc/webdynpro/SAP/ZCMW1001n)
1715
+ */
1716
+ export class StudentInformationApplication extends UniffiAbstractObject {
1717
+ [uniffiTypeNameSymbol] = 'StudentInformationApplication';
1718
+ // No primary constructor declared for this class.
1719
+ constructor(pointer) {
1720
+ super();
1721
+ this[pointerLiteralSymbol] = pointer;
1722
+ this[destructorGuardSymbol] = uniffiTypeStudentInformationApplicationObjectFactory.bless(pointer);
1723
+ }
1724
+
1725
+ /**
1726
+ * 학생의 학적상태 정보를 반환합니다.
1727
+ */
1728
+ async academicRecord(asyncOpts_) /*throws*/{
1729
+ const __stack = uniffiIsDebug ? new Error().stack : undefined;
1730
+ try {
1731
+ return await uniffiRustCallAsync(/*rustCaller:*/uniffiCaller, /*rustFutureFunc:*/() => {
1732
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_method_studentinformationapplication_academic_record(uniffiTypeStudentInformationApplicationObjectFactory.clonePointer(this));
1733
+ }, /*pollFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_poll_rust_buffer, /*cancelFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_cancel_rust_buffer, /*completeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_complete_rust_buffer, /*freeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_free_rust_buffer, /*liftFunc:*/FfiConverterTypeStudentAcademicRecords.lift.bind(FfiConverterTypeStudentAcademicRecords), /*liftString:*/FfiConverterString.lift, /*asyncOpts:*/asyncOpts_, /*errorHandler:*/FfiConverterTypeRusaintError.lift.bind(FfiConverterTypeRusaintError));
1734
+ } catch (__error) {
1735
+ if (uniffiIsDebug && __error instanceof Error) {
1736
+ __error.stack = __stack;
1737
+ }
1738
+ throw __error;
1739
+ }
1740
+ }
1741
+
1742
+ /**
1743
+ * 학생의 은행계좌 정보를 반환합니다.
1744
+ */
1745
+ async bankAccount(asyncOpts_) /*throws*/{
1746
+ const __stack = uniffiIsDebug ? new Error().stack : undefined;
1747
+ try {
1748
+ return await uniffiRustCallAsync(/*rustCaller:*/uniffiCaller, /*rustFutureFunc:*/() => {
1749
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_method_studentinformationapplication_bank_account(uniffiTypeStudentInformationApplicationObjectFactory.clonePointer(this));
1750
+ }, /*pollFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_poll_rust_buffer, /*cancelFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_cancel_rust_buffer, /*completeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_complete_rust_buffer, /*freeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_free_rust_buffer, /*liftFunc:*/FfiConverterTypeStudentBankAccount.lift.bind(FfiConverterTypeStudentBankAccount), /*liftString:*/FfiConverterString.lift, /*asyncOpts:*/asyncOpts_, /*errorHandler:*/FfiConverterTypeRusaintError.lift.bind(FfiConverterTypeRusaintError));
1751
+ } catch (__error) {
1752
+ if (uniffiIsDebug && __error instanceof Error) {
1753
+ __error.stack = __stack;
1754
+ }
1755
+ throw __error;
1756
+ }
1757
+ }
1758
+
1759
+ /**
1760
+ * 학생의 가족관계 정보를 반환합니다.
1761
+ */
1762
+ async family(asyncOpts_) /*throws*/{
1763
+ const __stack = uniffiIsDebug ? new Error().stack : undefined;
1764
+ try {
1765
+ return await uniffiRustCallAsync(/*rustCaller:*/uniffiCaller, /*rustFutureFunc:*/() => {
1766
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_method_studentinformationapplication_family(uniffiTypeStudentInformationApplicationObjectFactory.clonePointer(this));
1767
+ }, /*pollFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_poll_rust_buffer, /*cancelFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_cancel_rust_buffer, /*completeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_complete_rust_buffer, /*freeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_free_rust_buffer, /*liftFunc:*/FfiConverterTypeStudentFamily.lift.bind(FfiConverterTypeStudentFamily), /*liftString:*/FfiConverterString.lift, /*asyncOpts:*/asyncOpts_, /*errorHandler:*/FfiConverterTypeRusaintError.lift.bind(FfiConverterTypeRusaintError));
1768
+ } catch (__error) {
1769
+ if (uniffiIsDebug && __error instanceof Error) {
1770
+ __error.stack = __stack;
1771
+ }
1772
+ throw __error;
1773
+ }
1774
+ }
1775
+
1776
+ /**
1777
+ * 일반 학생 정보를 반환합니다.
1778
+ */
1779
+ async general(asyncOpts_) /*throws*/{
1780
+ const __stack = uniffiIsDebug ? new Error().stack : undefined;
1781
+ try {
1782
+ return await uniffiRustCallAsync(/*rustCaller:*/uniffiCaller, /*rustFutureFunc:*/() => {
1783
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_method_studentinformationapplication_general(uniffiTypeStudentInformationApplicationObjectFactory.clonePointer(this));
1784
+ }, /*pollFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_poll_rust_buffer, /*cancelFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_cancel_rust_buffer, /*completeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_complete_rust_buffer, /*freeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_free_rust_buffer, /*liftFunc:*/FfiConverterTypeStudentInformation.lift.bind(FfiConverterTypeStudentInformation), /*liftString:*/FfiConverterString.lift, /*asyncOpts:*/asyncOpts_, /*errorHandler:*/FfiConverterTypeRusaintError.lift.bind(FfiConverterTypeRusaintError));
1785
+ } catch (__error) {
1786
+ if (uniffiIsDebug && __error instanceof Error) {
1787
+ __error.stack = __stack;
1788
+ }
1789
+ throw __error;
1790
+ }
1791
+ }
1792
+
1793
+ /**
1794
+ * 학생의 졸업과 관련된 정보를 반환합니다.
1795
+ */
1796
+ async graduation(asyncOpts_) /*throws*/{
1797
+ const __stack = uniffiIsDebug ? new Error().stack : undefined;
1798
+ try {
1799
+ return await uniffiRustCallAsync(/*rustCaller:*/uniffiCaller, /*rustFutureFunc:*/() => {
1800
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_method_studentinformationapplication_graduation(uniffiTypeStudentInformationApplicationObjectFactory.clonePointer(this));
1801
+ }, /*pollFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_poll_rust_buffer, /*cancelFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_cancel_rust_buffer, /*completeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_complete_rust_buffer, /*freeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_free_rust_buffer, /*liftFunc:*/FfiConverterTypeStudentGraduation.lift.bind(FfiConverterTypeStudentGraduation), /*liftString:*/FfiConverterString.lift, /*asyncOpts:*/asyncOpts_, /*errorHandler:*/FfiConverterTypeRusaintError.lift.bind(FfiConverterTypeRusaintError));
1802
+ } catch (__error) {
1803
+ if (uniffiIsDebug && __error instanceof Error) {
1804
+ __error.stack = __stack;
1805
+ }
1806
+ throw __error;
1807
+ }
1808
+ }
1809
+
1810
+ /**
1811
+ * 학생의 교직, 평생교육사, 7+1 프로그램 등 자격 관련 정보를 반환합니다.
1812
+ */
1813
+ async qualifications(asyncOpts_) /*throws*/{
1814
+ const __stack = uniffiIsDebug ? new Error().stack : undefined;
1815
+ try {
1816
+ return await uniffiRustCallAsync(/*rustCaller:*/uniffiCaller, /*rustFutureFunc:*/() => {
1817
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_method_studentinformationapplication_qualifications(uniffiTypeStudentInformationApplicationObjectFactory.clonePointer(this));
1818
+ }, /*pollFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_poll_rust_buffer, /*cancelFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_cancel_rust_buffer, /*completeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_complete_rust_buffer, /*freeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_free_rust_buffer, /*liftFunc:*/FfiConverterTypeStudentQualification.lift.bind(FfiConverterTypeStudentQualification), /*liftString:*/FfiConverterString.lift, /*asyncOpts:*/asyncOpts_, /*errorHandler:*/FfiConverterTypeRusaintError.lift.bind(FfiConverterTypeRusaintError));
1819
+ } catch (__error) {
1820
+ if (uniffiIsDebug && __error instanceof Error) {
1821
+ __error.stack = __stack;
1822
+ }
1823
+ throw __error;
1824
+ }
1825
+ }
1826
+
1827
+ /**
1828
+ * 학생의 종교 정보를 반환합니다.
1829
+ */
1830
+ async religion(asyncOpts_) /*throws*/{
1831
+ const __stack = uniffiIsDebug ? new Error().stack : undefined;
1832
+ try {
1833
+ return await uniffiRustCallAsync(/*rustCaller:*/uniffiCaller, /*rustFutureFunc:*/() => {
1834
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_method_studentinformationapplication_religion(uniffiTypeStudentInformationApplicationObjectFactory.clonePointer(this));
1835
+ }, /*pollFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_poll_rust_buffer, /*cancelFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_cancel_rust_buffer, /*completeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_complete_rust_buffer, /*freeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_free_rust_buffer, /*liftFunc:*/FfiConverterTypeStudentReligion.lift.bind(FfiConverterTypeStudentReligion), /*liftString:*/FfiConverterString.lift, /*asyncOpts:*/asyncOpts_, /*errorHandler:*/FfiConverterTypeRusaintError.lift.bind(FfiConverterTypeRusaintError));
1836
+ } catch (__error) {
1837
+ if (uniffiIsDebug && __error instanceof Error) {
1838
+ __error.stack = __stack;
1839
+ }
1840
+ throw __error;
1841
+ }
1842
+ }
1843
+
1844
+ /**
1845
+ * 학생의 연구비 입금 계좌를 반환합니다.
1846
+ */
1847
+ async researchBankAccount(asyncOpts_) /*throws*/{
1848
+ const __stack = uniffiIsDebug ? new Error().stack : undefined;
1849
+ try {
1850
+ return await uniffiRustCallAsync(/*rustCaller:*/uniffiCaller, /*rustFutureFunc:*/() => {
1851
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_method_studentinformationapplication_research_bank_account(uniffiTypeStudentInformationApplicationObjectFactory.clonePointer(this));
1852
+ }, /*pollFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_poll_rust_buffer, /*cancelFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_cancel_rust_buffer, /*completeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_complete_rust_buffer, /*freeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_free_rust_buffer, /*liftFunc:*/FfiConverterTypeStudentResearchBankAccount.lift.bind(FfiConverterTypeStudentResearchBankAccount), /*liftString:*/FfiConverterString.lift, /*asyncOpts:*/asyncOpts_, /*errorHandler:*/FfiConverterTypeRusaintError.lift.bind(FfiConverterTypeRusaintError));
1853
+ } catch (__error) {
1854
+ if (uniffiIsDebug && __error instanceof Error) {
1855
+ __error.stack = __stack;
1856
+ }
1857
+ throw __error;
1858
+ }
1859
+ }
1860
+
1861
+ /**
1862
+ * 학생의 편입정보를 반환합니다.
1863
+ */
1864
+ async transfer(asyncOpts_) /*throws*/{
1865
+ const __stack = uniffiIsDebug ? new Error().stack : undefined;
1866
+ try {
1867
+ return await uniffiRustCallAsync(/*rustCaller:*/uniffiCaller, /*rustFutureFunc:*/() => {
1868
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_method_studentinformationapplication_transfer(uniffiTypeStudentInformationApplicationObjectFactory.clonePointer(this));
1869
+ }, /*pollFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_poll_rust_buffer, /*cancelFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_cancel_rust_buffer, /*completeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_complete_rust_buffer, /*freeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_free_rust_buffer, /*liftFunc:*/FfiConverterTypeStudentTransferRecords.lift.bind(FfiConverterTypeStudentTransferRecords), /*liftString:*/FfiConverterString.lift, /*asyncOpts:*/asyncOpts_, /*errorHandler:*/FfiConverterTypeRusaintError.lift.bind(FfiConverterTypeRusaintError));
1870
+ } catch (__error) {
1871
+ if (uniffiIsDebug && __error instanceof Error) {
1872
+ __error.stack = __stack;
1873
+ }
1874
+ throw __error;
1875
+ }
1876
+ }
1877
+
1878
+ /**
1879
+ * 학생의 직장 정보를 반환합니다.
1880
+ */
1881
+ async work(asyncOpts_) /*throws*/{
1882
+ const __stack = uniffiIsDebug ? new Error().stack : undefined;
1883
+ try {
1884
+ return await uniffiRustCallAsync(/*rustCaller:*/uniffiCaller, /*rustFutureFunc:*/() => {
1885
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_method_studentinformationapplication_work(uniffiTypeStudentInformationApplicationObjectFactory.clonePointer(this));
1886
+ }, /*pollFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_poll_rust_buffer, /*cancelFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_cancel_rust_buffer, /*completeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_complete_rust_buffer, /*freeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_free_rust_buffer, /*liftFunc:*/FfiConverterTypeStudentWorkInformation.lift.bind(FfiConverterTypeStudentWorkInformation), /*liftString:*/FfiConverterString.lift, /*asyncOpts:*/asyncOpts_, /*errorHandler:*/FfiConverterTypeRusaintError.lift.bind(FfiConverterTypeRusaintError));
1887
+ } catch (__error) {
1888
+ if (uniffiIsDebug && __error instanceof Error) {
1889
+ __error.stack = __stack;
1890
+ }
1891
+ throw __error;
1892
+ }
1893
+ }
1894
+
1895
+ /**
1896
+ * {@inheritDoc uniffi-bindgen-react-native#UniffiAbstractObject.uniffiDestroy}
1897
+ */
1898
+ uniffiDestroy() {
1899
+ const ptr = this[destructorGuardSymbol];
1900
+ if (ptr !== undefined) {
1901
+ const pointer = uniffiTypeStudentInformationApplicationObjectFactory.pointer(this);
1902
+ uniffiTypeStudentInformationApplicationObjectFactory.freePointer(pointer);
1903
+ uniffiTypeStudentInformationApplicationObjectFactory.unbless(ptr);
1904
+ delete this[destructorGuardSymbol];
1905
+ }
1906
+ }
1907
+ static instanceOf(obj) {
1908
+ return uniffiTypeStudentInformationApplicationObjectFactory.isConcreteType(obj);
1909
+ }
1910
+ }
1911
+ const uniffiTypeStudentInformationApplicationObjectFactory = {
1912
+ create(pointer) {
1913
+ const instance = Object.create(StudentInformationApplication.prototype);
1914
+ instance[pointerLiteralSymbol] = pointer;
1915
+ instance[destructorGuardSymbol] = this.bless(pointer);
1916
+ instance[uniffiTypeNameSymbol] = 'StudentInformationApplication';
1917
+ return instance;
1918
+ },
1919
+ bless(p) {
1920
+ return uniffiCaller.rustCall(/*caller:*/status => nativeModule().ubrn_uniffi_internal_fn_method_studentinformationapplication_ffi__bless_pointer(p, status), /*liftString:*/FfiConverterString.lift);
1921
+ },
1922
+ unbless(ptr) {
1923
+ ptr.markDestroyed();
1924
+ },
1925
+ pointer(obj) {
1926
+ if (obj[destructorGuardSymbol] === undefined) {
1927
+ throw new UniffiInternalError.UnexpectedNullPointer();
1928
+ }
1929
+ return obj[pointerLiteralSymbol];
1930
+ },
1931
+ clonePointer(obj) {
1932
+ const pointer = this.pointer(obj);
1933
+ return uniffiCaller.rustCall(/*caller:*/callStatus => nativeModule().ubrn_uniffi_rusaint_ffi_fn_clone_studentinformationapplication(pointer, callStatus), /*liftString:*/FfiConverterString.lift);
1934
+ },
1935
+ freePointer(pointer) {
1936
+ uniffiCaller.rustCall(/*caller:*/callStatus => nativeModule().ubrn_uniffi_rusaint_ffi_fn_free_studentinformationapplication(pointer, callStatus), /*liftString:*/FfiConverterString.lift);
1937
+ },
1938
+ isConcreteType(obj) {
1939
+ return obj[destructorGuardSymbol] && obj[uniffiTypeNameSymbol] === 'StudentInformationApplication';
1940
+ }
1941
+ };
1942
+ // FfiConverter for StudentInformationApplicationInterface
1943
+ const FfiConverterTypeStudentInformationApplication = new FfiConverterObject(uniffiTypeStudentInformationApplicationObjectFactory);
1944
+
1945
+ /**
1946
+ * [`StudentInformationApplication`] 생성을 위한 빌더
1947
+ */
1948
+
1949
+ /**
1950
+ * [`StudentInformationApplication`] 생성을 위한 빌더
1951
+ */
1952
+ export class StudentInformationApplicationBuilder extends UniffiAbstractObject {
1953
+ [uniffiTypeNameSymbol] = 'StudentInformationApplicationBuilder';
1954
+ /**
1955
+ * 새로운 [`StudentInformationApplicationBuilder`]를 만듭니다.
1956
+ */
1957
+ constructor() {
1958
+ super();
1959
+ const pointer = uniffiCaller.rustCall(/*caller:*/callStatus => {
1960
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_constructor_studentinformationapplicationbuilder_new(callStatus);
1961
+ }, /*liftString:*/FfiConverterString.lift);
1962
+ this[pointerLiteralSymbol] = pointer;
1963
+ this[destructorGuardSymbol] = uniffiTypeStudentInformationApplicationBuilderObjectFactory.bless(pointer);
1964
+ }
1965
+
1966
+ /**
1967
+ * 세션과 함께 [`StudentInformationApplication`]을 만듭니다.
1968
+ */
1969
+ async build(session, asyncOpts_) /*throws*/{
1970
+ const __stack = uniffiIsDebug ? new Error().stack : undefined;
1971
+ try {
1972
+ return await uniffiRustCallAsync(/*rustCaller:*/uniffiCaller, /*rustFutureFunc:*/() => {
1973
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_method_studentinformationapplicationbuilder_build(uniffiTypeStudentInformationApplicationBuilderObjectFactory.clonePointer(this), FfiConverterTypeUSaintSession.lower(session));
1974
+ }, /*pollFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_poll_pointer, /*cancelFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_cancel_pointer, /*completeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_complete_pointer, /*freeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_free_pointer, /*liftFunc:*/FfiConverterTypeStudentInformationApplication.lift.bind(FfiConverterTypeStudentInformationApplication), /*liftString:*/FfiConverterString.lift, /*asyncOpts:*/asyncOpts_, /*errorHandler:*/FfiConverterTypeRusaintError.lift.bind(FfiConverterTypeRusaintError));
1975
+ } catch (__error) {
1976
+ if (uniffiIsDebug && __error instanceof Error) {
1977
+ __error.stack = __stack;
1978
+ }
1979
+ throw __error;
1980
+ }
1981
+ }
1982
+
1983
+ /**
1984
+ * {@inheritDoc uniffi-bindgen-react-native#UniffiAbstractObject.uniffiDestroy}
1985
+ */
1986
+ uniffiDestroy() {
1987
+ const ptr = this[destructorGuardSymbol];
1988
+ if (ptr !== undefined) {
1989
+ const pointer = uniffiTypeStudentInformationApplicationBuilderObjectFactory.pointer(this);
1990
+ uniffiTypeStudentInformationApplicationBuilderObjectFactory.freePointer(pointer);
1991
+ uniffiTypeStudentInformationApplicationBuilderObjectFactory.unbless(ptr);
1992
+ delete this[destructorGuardSymbol];
1993
+ }
1994
+ }
1995
+ static instanceOf(obj) {
1996
+ return uniffiTypeStudentInformationApplicationBuilderObjectFactory.isConcreteType(obj);
1997
+ }
1998
+ }
1999
+ const uniffiTypeStudentInformationApplicationBuilderObjectFactory = {
2000
+ create(pointer) {
2001
+ const instance = Object.create(StudentInformationApplicationBuilder.prototype);
2002
+ instance[pointerLiteralSymbol] = pointer;
2003
+ instance[destructorGuardSymbol] = this.bless(pointer);
2004
+ instance[uniffiTypeNameSymbol] = 'StudentInformationApplicationBuilder';
2005
+ return instance;
2006
+ },
2007
+ bless(p) {
2008
+ return uniffiCaller.rustCall(/*caller:*/status => nativeModule().ubrn_uniffi_internal_fn_method_studentinformationapplicationbuilder_ffi__bless_pointer(p, status), /*liftString:*/FfiConverterString.lift);
2009
+ },
2010
+ unbless(ptr) {
2011
+ ptr.markDestroyed();
2012
+ },
2013
+ pointer(obj) {
2014
+ if (obj[destructorGuardSymbol] === undefined) {
2015
+ throw new UniffiInternalError.UnexpectedNullPointer();
2016
+ }
2017
+ return obj[pointerLiteralSymbol];
2018
+ },
2019
+ clonePointer(obj) {
2020
+ const pointer = this.pointer(obj);
2021
+ return uniffiCaller.rustCall(/*caller:*/callStatus => nativeModule().ubrn_uniffi_rusaint_ffi_fn_clone_studentinformationapplicationbuilder(pointer, callStatus), /*liftString:*/FfiConverterString.lift);
2022
+ },
2023
+ freePointer(pointer) {
2024
+ uniffiCaller.rustCall(/*caller:*/callStatus => nativeModule().ubrn_uniffi_rusaint_ffi_fn_free_studentinformationapplicationbuilder(pointer, callStatus), /*liftString:*/FfiConverterString.lift);
2025
+ },
2026
+ isConcreteType(obj) {
2027
+ return obj[destructorGuardSymbol] && obj[uniffiTypeNameSymbol] === 'StudentInformationApplicationBuilder';
2028
+ }
2029
+ };
2030
+ // FfiConverter for StudentInformationApplicationBuilderInterface
2031
+ const FfiConverterTypeStudentInformationApplicationBuilder = new FfiConverterObject(uniffiTypeStudentInformationApplicationBuilderObjectFactory);
2032
+
2033
+ /**
2034
+ * u-saint에서 사용할 세션
2035
+ * [`USaintSessionBuilder`]를 이용해 생성합니다.
2036
+ */
2037
+
2038
+ /**
2039
+ * u-saint에서 사용할 세션
2040
+ * [`USaintSessionBuilder`]를 이용해 생성합니다.
2041
+ */
2042
+ export class USaintSession extends UniffiAbstractObject {
2043
+ [uniffiTypeNameSymbol] = 'USaintSession';
2044
+ // No primary constructor declared for this class.
2045
+ constructor(pointer) {
2046
+ super();
2047
+ this[pointerLiteralSymbol] = pointer;
2048
+ this[destructorGuardSymbol] = uniffiTypeUSaintSessionObjectFactory.bless(pointer);
2049
+ }
2050
+
2051
+ /**
2052
+ * {@inheritDoc uniffi-bindgen-react-native#UniffiAbstractObject.uniffiDestroy}
2053
+ */
2054
+ uniffiDestroy() {
2055
+ const ptr = this[destructorGuardSymbol];
2056
+ if (ptr !== undefined) {
2057
+ const pointer = uniffiTypeUSaintSessionObjectFactory.pointer(this);
2058
+ uniffiTypeUSaintSessionObjectFactory.freePointer(pointer);
2059
+ uniffiTypeUSaintSessionObjectFactory.unbless(ptr);
2060
+ delete this[destructorGuardSymbol];
2061
+ }
2062
+ }
2063
+ static instanceOf(obj) {
2064
+ return uniffiTypeUSaintSessionObjectFactory.isConcreteType(obj);
2065
+ }
2066
+ }
2067
+ const uniffiTypeUSaintSessionObjectFactory = {
2068
+ create(pointer) {
2069
+ const instance = Object.create(USaintSession.prototype);
2070
+ instance[pointerLiteralSymbol] = pointer;
2071
+ instance[destructorGuardSymbol] = this.bless(pointer);
2072
+ instance[uniffiTypeNameSymbol] = 'USaintSession';
2073
+ return instance;
2074
+ },
2075
+ bless(p) {
2076
+ return uniffiCaller.rustCall(/*caller:*/status => nativeModule().ubrn_uniffi_internal_fn_method_usaintsession_ffi__bless_pointer(p, status), /*liftString:*/FfiConverterString.lift);
2077
+ },
2078
+ unbless(ptr) {
2079
+ ptr.markDestroyed();
2080
+ },
2081
+ pointer(obj) {
2082
+ if (obj[destructorGuardSymbol] === undefined) {
2083
+ throw new UniffiInternalError.UnexpectedNullPointer();
2084
+ }
2085
+ return obj[pointerLiteralSymbol];
2086
+ },
2087
+ clonePointer(obj) {
2088
+ const pointer = this.pointer(obj);
2089
+ return uniffiCaller.rustCall(/*caller:*/callStatus => nativeModule().ubrn_uniffi_rusaint_ffi_fn_clone_usaintsession(pointer, callStatus), /*liftString:*/FfiConverterString.lift);
2090
+ },
2091
+ freePointer(pointer) {
2092
+ uniffiCaller.rustCall(/*caller:*/callStatus => nativeModule().ubrn_uniffi_rusaint_ffi_fn_free_usaintsession(pointer, callStatus), /*liftString:*/FfiConverterString.lift);
2093
+ },
2094
+ isConcreteType(obj) {
2095
+ return obj[destructorGuardSymbol] && obj[uniffiTypeNameSymbol] === 'USaintSession';
2096
+ }
2097
+ };
2098
+ // FfiConverter for USaintSessionInterface
2099
+ const FfiConverterTypeUSaintSession = new FfiConverterObject(uniffiTypeUSaintSessionObjectFactory);
2100
+
2101
+ /**
2102
+ * [`USaintSession`]을 생성하기 위한 빌더
2103
+ */
2104
+
2105
+ /**
2106
+ * [`USaintSession`]을 생성하기 위한 빌더
2107
+ */
2108
+ export class USaintSessionBuilder extends UniffiAbstractObject {
2109
+ [uniffiTypeNameSymbol] = 'USaintSessionBuilder';
2110
+ /**
2111
+ * 새로운 [`USaintSessionBuilder`]를 만듭니다.
2112
+ */
2113
+ constructor() {
2114
+ super();
2115
+ const pointer = uniffiCaller.rustCall(/*caller:*/callStatus => {
2116
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_constructor_usaintsessionbuilder_new(callStatus);
2117
+ }, /*liftString:*/FfiConverterString.lift);
2118
+ this[pointerLiteralSymbol] = pointer;
2119
+ this[destructorGuardSymbol] = uniffiTypeUSaintSessionBuilderObjectFactory.bless(pointer);
2120
+ }
2121
+
2122
+ /**
2123
+ * 익명 세션(비로그인)을 만듭니다.
2124
+ * ## Kotlin
2125
+ * ```kotlin
2126
+ * fun createAnonymousSession() {
2127
+ * val anonymous = USaintSessionBuilder().anonymous()
2128
+ * }
2129
+ * ```
2130
+ */
2131
+ anonymous() {
2132
+ return FfiConverterTypeUSaintSession.lift(uniffiCaller.rustCall(/*caller:*/callStatus => {
2133
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_method_usaintsessionbuilder_anonymous(uniffiTypeUSaintSessionBuilderObjectFactory.clonePointer(this), callStatus);
2134
+ }, /*liftString:*/FfiConverterString.lift));
2135
+ }
2136
+
2137
+ /**
2138
+ * ID, 비밀번호로 세션을 만듭니다.
2139
+ * ## Kotlin
2140
+ * ```kotlin
2141
+ * suspend fun createSessionWithPassword() {
2142
+ * val withPassword = USaintSessionBuilder().withPassword("20211561", "password") // suspend
2143
+ * }
2144
+ */
2145
+ async withPassword(id, password, asyncOpts_) /*throws*/{
2146
+ const __stack = uniffiIsDebug ? new Error().stack : undefined;
2147
+ try {
2148
+ return await uniffiRustCallAsync(/*rustCaller:*/uniffiCaller, /*rustFutureFunc:*/() => {
2149
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_method_usaintsessionbuilder_with_password(uniffiTypeUSaintSessionBuilderObjectFactory.clonePointer(this), FfiConverterString.lower(id), FfiConverterString.lower(password));
2150
+ }, /*pollFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_poll_pointer, /*cancelFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_cancel_pointer, /*completeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_complete_pointer, /*freeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_free_pointer, /*liftFunc:*/FfiConverterTypeUSaintSession.lift.bind(FfiConverterTypeUSaintSession), /*liftString:*/FfiConverterString.lift, /*asyncOpts:*/asyncOpts_, /*errorHandler:*/FfiConverterTypeRusaintError.lift.bind(FfiConverterTypeRusaintError));
2151
+ } catch (__error) {
2152
+ if (uniffiIsDebug && __error instanceof Error) {
2153
+ __error.stack = __stack;
2154
+ }
2155
+ throw __error;
2156
+ }
2157
+ }
2158
+
2159
+ /**
2160
+ * SSO 토큰으로 세션을 만듭니다.
2161
+ * ## Kotlin
2162
+ * ```kotlin
2163
+ * suspend fun createSessionWithSsoToken() {
2164
+ * val withToken = USaintSessionBuilder().withToken("<example sso token>") // suspend
2165
+ * }
2166
+ */
2167
+ async withToken(id, token, asyncOpts_) /*throws*/{
2168
+ const __stack = uniffiIsDebug ? new Error().stack : undefined;
2169
+ try {
2170
+ return await uniffiRustCallAsync(/*rustCaller:*/uniffiCaller, /*rustFutureFunc:*/() => {
2171
+ return nativeModule().ubrn_uniffi_rusaint_ffi_fn_method_usaintsessionbuilder_with_token(uniffiTypeUSaintSessionBuilderObjectFactory.clonePointer(this), FfiConverterString.lower(id), FfiConverterString.lower(token));
2172
+ }, /*pollFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_poll_pointer, /*cancelFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_cancel_pointer, /*completeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_complete_pointer, /*freeFunc:*/nativeModule().ubrn_ffi_rusaint_ffi_rust_future_free_pointer, /*liftFunc:*/FfiConverterTypeUSaintSession.lift.bind(FfiConverterTypeUSaintSession), /*liftString:*/FfiConverterString.lift, /*asyncOpts:*/asyncOpts_, /*errorHandler:*/FfiConverterTypeRusaintError.lift.bind(FfiConverterTypeRusaintError));
2173
+ } catch (__error) {
2174
+ if (uniffiIsDebug && __error instanceof Error) {
2175
+ __error.stack = __stack;
2176
+ }
2177
+ throw __error;
2178
+ }
2179
+ }
2180
+
2181
+ /**
2182
+ * {@inheritDoc uniffi-bindgen-react-native#UniffiAbstractObject.uniffiDestroy}
2183
+ */
2184
+ uniffiDestroy() {
2185
+ const ptr = this[destructorGuardSymbol];
2186
+ if (ptr !== undefined) {
2187
+ const pointer = uniffiTypeUSaintSessionBuilderObjectFactory.pointer(this);
2188
+ uniffiTypeUSaintSessionBuilderObjectFactory.freePointer(pointer);
2189
+ uniffiTypeUSaintSessionBuilderObjectFactory.unbless(ptr);
2190
+ delete this[destructorGuardSymbol];
2191
+ }
2192
+ }
2193
+ static instanceOf(obj) {
2194
+ return uniffiTypeUSaintSessionBuilderObjectFactory.isConcreteType(obj);
2195
+ }
2196
+ }
2197
+ const uniffiTypeUSaintSessionBuilderObjectFactory = {
2198
+ create(pointer) {
2199
+ const instance = Object.create(USaintSessionBuilder.prototype);
2200
+ instance[pointerLiteralSymbol] = pointer;
2201
+ instance[destructorGuardSymbol] = this.bless(pointer);
2202
+ instance[uniffiTypeNameSymbol] = 'USaintSessionBuilder';
2203
+ return instance;
2204
+ },
2205
+ bless(p) {
2206
+ return uniffiCaller.rustCall(/*caller:*/status => nativeModule().ubrn_uniffi_internal_fn_method_usaintsessionbuilder_ffi__bless_pointer(p, status), /*liftString:*/FfiConverterString.lift);
2207
+ },
2208
+ unbless(ptr) {
2209
+ ptr.markDestroyed();
2210
+ },
2211
+ pointer(obj) {
2212
+ if (obj[destructorGuardSymbol] === undefined) {
2213
+ throw new UniffiInternalError.UnexpectedNullPointer();
2214
+ }
2215
+ return obj[pointerLiteralSymbol];
2216
+ },
2217
+ clonePointer(obj) {
2218
+ const pointer = this.pointer(obj);
2219
+ return uniffiCaller.rustCall(/*caller:*/callStatus => nativeModule().ubrn_uniffi_rusaint_ffi_fn_clone_usaintsessionbuilder(pointer, callStatus), /*liftString:*/FfiConverterString.lift);
2220
+ },
2221
+ freePointer(pointer) {
2222
+ uniffiCaller.rustCall(/*caller:*/callStatus => nativeModule().ubrn_uniffi_rusaint_ffi_fn_free_usaintsessionbuilder(pointer, callStatus), /*liftString:*/FfiConverterString.lift);
2223
+ },
2224
+ isConcreteType(obj) {
2225
+ return obj[destructorGuardSymbol] && obj[uniffiTypeNameSymbol] === 'USaintSessionBuilder';
2226
+ }
2227
+ };
2228
+ // FfiConverter for USaintSessionBuilderInterface
2229
+ const FfiConverterTypeUSaintSessionBuilder = new FfiConverterObject(uniffiTypeUSaintSessionBuilderObjectFactory);
2230
+
2231
+ // FfiConverter for string | undefined
2232
+ const FfiConverterOptionalString = new FfiConverterOptional(FfiConverterString);
2233
+
2234
+ // FfiConverter for /*u32*/number | undefined
2235
+ const FfiConverterOptionalUInt32 = new FfiConverterOptional(FfiConverterUInt32);
2236
+
2237
+ // FfiConverter for Array<ClassGrade>
2238
+ const FfiConverterArrayTypeClassGrade = new FfiConverterArray(FfiConverterTypeClassGrade);
2239
+
2240
+ // FfiConverter for Array<Lecture>
2241
+ const FfiConverterArrayTypeLecture = new FfiConverterArray(FfiConverterTypeLecture);
2242
+
2243
+ // FfiConverter for Array<LectureAssessmentResult>
2244
+ const FfiConverterArrayTypeLectureAssessmentResult = new FfiConverterArray(FfiConverterTypeLectureAssessmentResult);
2245
+
2246
+ // FfiConverter for Array<Scholarship>
2247
+ const FfiConverterArrayTypeScholarship = new FfiConverterArray(FfiConverterTypeScholarship);
2248
+
2249
+ // FfiConverter for Array<SemesterGrade>
2250
+ const FfiConverterArrayTypeSemesterGrade = new FfiConverterArray(FfiConverterTypeSemesterGrade);
2251
+
2252
+ // FfiConverter for Array<string>
2253
+ const FfiConverterArrayString = new FfiConverterArray(FfiConverterString);
2254
+
2255
+ /**
2256
+ * This should be called before anything else.
2257
+ *
2258
+ * It is likely that this is being done for you by the library's `index.ts`.
2259
+ *
2260
+ * It checks versions of uniffi between when the Rust scaffolding was generated
2261
+ * and when the bindings were generated.
2262
+ *
2263
+ * It also initializes the machinery to enable Rust to talk back to Javascript.
2264
+ */
2265
+ function uniffiEnsureInitialized() {
2266
+ // Get the bindings contract version from our ComponentInterface
2267
+ const bindingsContractVersion = 29;
2268
+ // Get the scaffolding contract version by calling the into the dylib
2269
+ const scaffoldingContractVersion = nativeModule().ubrn_ffi_rusaint_ffi_uniffi_contract_version();
2270
+ if (bindingsContractVersion !== scaffoldingContractVersion) {
2271
+ throw new UniffiInternalError.ContractVersionMismatch(scaffoldingContractVersion, bindingsContractVersion);
2272
+ }
2273
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_method_chapelapplication_get_selected_semester() !== 6133) {
2274
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_method_chapelapplication_get_selected_semester');
2275
+ }
2276
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_method_chapelapplication_information() !== 21740) {
2277
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_method_chapelapplication_information');
2278
+ }
2279
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_method_chapelapplicationbuilder_build() !== 32906) {
2280
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_method_chapelapplicationbuilder_build');
2281
+ }
2282
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_method_coursegradesapplication_certificated_summary() !== 8880) {
2283
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_method_coursegradesapplication_certificated_summary');
2284
+ }
2285
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_method_coursegradesapplication_class_detail() !== 3843) {
2286
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_method_coursegradesapplication_class_detail');
2287
+ }
2288
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_method_coursegradesapplication_classes() !== 12879) {
2289
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_method_coursegradesapplication_classes');
2290
+ }
2291
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_method_coursegradesapplication_get_selected_semester() !== 50223) {
2292
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_method_coursegradesapplication_get_selected_semester');
2293
+ }
2294
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_method_coursegradesapplication_recorded_summary() !== 3787) {
2295
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_method_coursegradesapplication_recorded_summary');
2296
+ }
2297
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_method_coursegradesapplication_semesters() !== 55958) {
2298
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_method_coursegradesapplication_semesters');
2299
+ }
2300
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_method_coursegradesapplicationbuilder_build() !== 50139) {
2301
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_method_coursegradesapplicationbuilder_build');
2302
+ }
2303
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_method_coursescheduleapplication_chapel_categories() !== 21428) {
2304
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_method_coursescheduleapplication_chapel_categories');
2305
+ }
2306
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_method_coursescheduleapplication_collages() !== 50658) {
2307
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_method_coursescheduleapplication_collages');
2308
+ }
2309
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_method_coursescheduleapplication_connected_majors() !== 24954) {
2310
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_method_coursescheduleapplication_connected_majors');
2311
+ }
2312
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_method_coursescheduleapplication_departments() !== 10692) {
2313
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_method_coursescheduleapplication_departments');
2314
+ }
2315
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_method_coursescheduleapplication_find_lectures() !== 7590) {
2316
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_method_coursescheduleapplication_find_lectures');
2317
+ }
2318
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_method_coursescheduleapplication_get_selected_semester() !== 52870) {
2319
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_method_coursescheduleapplication_get_selected_semester');
2320
+ }
2321
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_method_coursescheduleapplication_graduated_collages() !== 29655) {
2322
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_method_coursescheduleapplication_graduated_collages');
2323
+ }
2324
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_method_coursescheduleapplication_graduated_departments() !== 42882) {
2325
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_method_coursescheduleapplication_graduated_departments');
2326
+ }
2327
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_method_coursescheduleapplication_majors() !== 356) {
2328
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_method_coursescheduleapplication_majors');
2329
+ }
2330
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_method_coursescheduleapplication_optional_elective_categories() !== 63165) {
2331
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_method_coursescheduleapplication_optional_elective_categories');
2332
+ }
2333
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_method_coursescheduleapplication_required_electives() !== 46039) {
2334
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_method_coursescheduleapplication_required_electives');
2335
+ }
2336
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_method_coursescheduleapplication_united_majors() !== 41228) {
2337
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_method_coursescheduleapplication_united_majors');
2338
+ }
2339
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_method_coursescheduleapplicationbuilder_build() !== 60808) {
2340
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_method_coursescheduleapplicationbuilder_build');
2341
+ }
2342
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_method_graduationrequirementsapplication_requirements() !== 63669) {
2343
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_method_graduationrequirementsapplication_requirements');
2344
+ }
2345
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_method_graduationrequirementsapplication_student_info() !== 6063) {
2346
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_method_graduationrequirementsapplication_student_info');
2347
+ }
2348
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_method_graduationrequirementsapplicationbuilder_build() !== 18426) {
2349
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_method_graduationrequirementsapplicationbuilder_build');
2350
+ }
2351
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_method_lectureassessmentapplication_find_assessments() !== 53523) {
2352
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_method_lectureassessmentapplication_find_assessments');
2353
+ }
2354
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_method_lectureassessmentapplication_get_selected_semester() !== 2234) {
2355
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_method_lectureassessmentapplication_get_selected_semester');
2356
+ }
2357
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_method_lectureassessmentapplicationbuilder_build() !== 52720) {
2358
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_method_lectureassessmentapplicationbuilder_build');
2359
+ }
2360
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_method_personalcoursescheduleapplication_get_selected_semester() !== 26180) {
2361
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_method_personalcoursescheduleapplication_get_selected_semester');
2362
+ }
2363
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_method_personalcoursescheduleapplication_schedule() !== 58730) {
2364
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_method_personalcoursescheduleapplication_schedule');
2365
+ }
2366
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_method_personalcoursescheduleapplicationbuilder_build() !== 42578) {
2367
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_method_personalcoursescheduleapplicationbuilder_build');
2368
+ }
2369
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_method_scholarshipsapplication_scholarships() !== 28486) {
2370
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_method_scholarshipsapplication_scholarships');
2371
+ }
2372
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_method_scholarshipsapplicationbuilder_build() !== 35090) {
2373
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_method_scholarshipsapplicationbuilder_build');
2374
+ }
2375
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_method_studentinformationapplication_academic_record() !== 56142) {
2376
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_method_studentinformationapplication_academic_record');
2377
+ }
2378
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_method_studentinformationapplication_bank_account() !== 24141) {
2379
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_method_studentinformationapplication_bank_account');
2380
+ }
2381
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_method_studentinformationapplication_family() !== 32983) {
2382
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_method_studentinformationapplication_family');
2383
+ }
2384
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_method_studentinformationapplication_general() !== 64238) {
2385
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_method_studentinformationapplication_general');
2386
+ }
2387
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_method_studentinformationapplication_graduation() !== 31914) {
2388
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_method_studentinformationapplication_graduation');
2389
+ }
2390
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_method_studentinformationapplication_qualifications() !== 24889) {
2391
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_method_studentinformationapplication_qualifications');
2392
+ }
2393
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_method_studentinformationapplication_religion() !== 49903) {
2394
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_method_studentinformationapplication_religion');
2395
+ }
2396
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_method_studentinformationapplication_research_bank_account() !== 7706) {
2397
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_method_studentinformationapplication_research_bank_account');
2398
+ }
2399
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_method_studentinformationapplication_transfer() !== 46555) {
2400
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_method_studentinformationapplication_transfer');
2401
+ }
2402
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_method_studentinformationapplication_work() !== 4701) {
2403
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_method_studentinformationapplication_work');
2404
+ }
2405
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_method_studentinformationapplicationbuilder_build() !== 12986) {
2406
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_method_studentinformationapplicationbuilder_build');
2407
+ }
2408
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_method_usaintsessionbuilder_anonymous() !== 59232) {
2409
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_method_usaintsessionbuilder_anonymous');
2410
+ }
2411
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_method_usaintsessionbuilder_with_password() !== 35896) {
2412
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_method_usaintsessionbuilder_with_password');
2413
+ }
2414
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_method_usaintsessionbuilder_with_token() !== 48669) {
2415
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_method_usaintsessionbuilder_with_token');
2416
+ }
2417
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_constructor_chapelapplicationbuilder_new() !== 52857) {
2418
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_constructor_chapelapplicationbuilder_new');
2419
+ }
2420
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_constructor_coursegradesapplicationbuilder_new() !== 45366) {
2421
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_constructor_coursegradesapplicationbuilder_new');
2422
+ }
2423
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_constructor_coursescheduleapplicationbuilder_new() !== 52419) {
2424
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_constructor_coursescheduleapplicationbuilder_new');
2425
+ }
2426
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_constructor_graduationrequirementsapplicationbuilder_new() !== 7670) {
2427
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_constructor_graduationrequirementsapplicationbuilder_new');
2428
+ }
2429
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_constructor_lectureassessmentapplicationbuilder_new() !== 61021) {
2430
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_constructor_lectureassessmentapplicationbuilder_new');
2431
+ }
2432
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_constructor_personalcoursescheduleapplicationbuilder_new() !== 46717) {
2433
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_constructor_personalcoursescheduleapplicationbuilder_new');
2434
+ }
2435
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_constructor_scholarshipsapplicationbuilder_new() !== 64614) {
2436
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_constructor_scholarshipsapplicationbuilder_new');
2437
+ }
2438
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_constructor_studentinformationapplicationbuilder_new() !== 5527) {
2439
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_constructor_studentinformationapplicationbuilder_new');
2440
+ }
2441
+ if (nativeModule().ubrn_uniffi_rusaint_ffi_checksum_constructor_usaintsessionbuilder_new() !== 54500) {
2442
+ throw new UniffiInternalError.ApiChecksumMismatch('uniffi_rusaint_ffi_checksum_constructor_usaintsessionbuilder_new');
2443
+ }
2444
+ }
2445
+ export default Object.freeze({
2446
+ initialize: uniffiEnsureInitialized,
2447
+ converters: {
2448
+ FfiConverterTypeChapelApplication,
2449
+ FfiConverterTypeChapelApplicationBuilder,
2450
+ FfiConverterTypeCourseGradesApplication,
2451
+ FfiConverterTypeCourseGradesApplicationBuilder,
2452
+ FfiConverterTypeCourseScheduleApplication,
2453
+ FfiConverterTypeCourseScheduleApplicationBuilder,
2454
+ FfiConverterTypeGraduationRequirementsApplication,
2455
+ FfiConverterTypeGraduationRequirementsApplicationBuilder,
2456
+ FfiConverterTypeLectureAssessmentApplication,
2457
+ FfiConverterTypeLectureAssessmentApplicationBuilder,
2458
+ FfiConverterTypePersonalCourseScheduleApplication,
2459
+ FfiConverterTypePersonalCourseScheduleApplicationBuilder,
2460
+ FfiConverterTypeScholarshipsApplication,
2461
+ FfiConverterTypeScholarshipsApplicationBuilder,
2462
+ FfiConverterTypeStudentInformationApplication,
2463
+ FfiConverterTypeStudentInformationApplicationBuilder,
2464
+ FfiConverterTypeUSaintSession,
2465
+ FfiConverterTypeUSaintSessionBuilder,
2466
+ FfiConverterTypeYearSemester
2467
+ }
2468
+ });
2469
+ //# sourceMappingURL=rusaint_ffi.js.map