stackone_client 0.5.6 → 0.5.7

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 (42) hide show
  1. checksums.yaml +4 -4
  2. data/lib/stack_one/hris.rb +219 -0
  3. data/lib/stack_one/lms.rb +2 -1
  4. data/lib/stack_one/models/operations/hris_get_employee_time_off_balance_request.rb +42 -0
  5. data/lib/stack_one/models/operations/hris_get_employee_time_off_balance_response.rb +36 -0
  6. data/lib/stack_one/models/operations/hris_get_time_off_policy_request.rb +36 -0
  7. data/lib/stack_one/models/operations/hris_get_time_off_policy_response.rb +36 -0
  8. data/lib/stack_one/models/operations/hris_invite_employee_request.rb +30 -0
  9. data/lib/stack_one/models/operations/hris_invite_employee_response.rb +36 -0
  10. data/lib/stack_one/models/operations/hris_list_employee_time_off_balances_queryparam_filter.rb +27 -0
  11. data/lib/stack_one/models/operations/hris_list_employee_time_off_balances_request.rb +58 -0
  12. data/lib/stack_one/models/operations/hris_list_employee_time_off_balances_response.rb +36 -0
  13. data/lib/stack_one/models/operations/hris_list_time_off_policies_queryparam_filter.rb +24 -0
  14. data/lib/stack_one/models/operations/hris_list_time_off_policies_request.rb +52 -0
  15. data/lib/stack_one/models/operations/hris_list_time_off_policies_response.rb +36 -0
  16. data/lib/stack_one/models/operations/lms_list_assignments_queryparam_filter.rb +2 -5
  17. data/lib/stack_one/models/operations/lms_list_completions_queryparam_filter.rb +2 -5
  18. data/lib/stack_one/models/operations/lms_list_user_assignments_queryparam_filter.rb +2 -5
  19. data/lib/stack_one/models/operations/lms_list_user_completions_queryparam_filter.rb +2 -5
  20. data/lib/stack_one/models/operations.rb +12 -4
  21. data/lib/stack_one/models/shared/balance_unit.rb +27 -0
  22. data/lib/stack_one/models/shared/hrisinviteemployeerequestdto.rb +24 -0
  23. data/lib/stack_one/models/shared/inviteemployeeresult.rb +33 -0
  24. data/lib/stack_one/models/shared/policy.rb +42 -0
  25. data/lib/stack_one/models/shared/timeoffbalanceresult.rb +27 -0
  26. data/lib/stack_one/models/shared/timeoffbalances.rb +54 -0
  27. data/lib/stack_one/models/shared/timeoffbalances_schemas_value.rb +26 -0
  28. data/lib/stack_one/models/shared/timeoffbalances_type.rb +27 -0
  29. data/lib/stack_one/models/shared/timeoffbalances_value.rb +22 -0
  30. data/lib/stack_one/models/shared/timeoffbalancespaginated.rb +30 -0
  31. data/lib/stack_one/models/shared/timeoffpolicies.rb +42 -0
  32. data/lib/stack_one/models/shared/timeoffpolicies_type.rb +27 -0
  33. data/lib/stack_one/models/shared/timeoffpolicies_value.rb +26 -0
  34. data/lib/stack_one/models/shared/timeoffpoliciespaginated.rb +30 -0
  35. data/lib/stack_one/models/shared/timeoffpolicyresult.rb +27 -0
  36. data/lib/stack_one/models/shared.rb +15 -0
  37. data/lib/stack_one/sdkconfiguration.rb +3 -3
  38. metadata +29 -6
  39. data/lib/stack_one/models/operations/learning_object_type.rb +0 -19
  40. data/lib/stack_one/models/operations/lms_list_user_assignments_queryparam_learning_object_type.rb +0 -19
  41. data/lib/stack_one/models/operations/lms_list_user_completions_queryparam_learning_object_type.rb +0 -19
  42. data/lib/stack_one/models/operations/queryparam_learning_object_type.rb +0 -19
@@ -0,0 +1,52 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module StackOne
8
+ module Operations
9
+
10
+
11
+ class HrisListTimeOffPoliciesRequest < ::StackOne::Utils::FieldAugmented
12
+ extend T::Sig
13
+
14
+ # The account identifier
15
+ field :x_account_id, ::String, { 'header': { 'field_name': 'x-account-id', 'style': 'simple', 'explode': false } }
16
+ # The comma separated list of fields that will be returned in the response (if empty, all fields are returned)
17
+ field :fields_, T.nilable(::String), { 'query_param': { 'field_name': 'fields', 'style': 'form', 'explode': true } }
18
+ # Filter parameters that allow greater customisation of the list response
19
+ field :filter, T.nilable(::StackOne::Operations::HrisListTimeOffPoliciesQueryParamFilter), { 'query_param': { 'field_name': 'filter', 'style': 'deepObject', 'explode': true } }
20
+ # The unified cursor
21
+ field :next_, T.nilable(::String), { 'query_param': { 'field_name': 'next', 'style': 'form', 'explode': true } }
22
+ # The page number of the results to fetch
23
+ #
24
+ # @deprecated true: This will be removed in a future release, please migrate away from it as soon as possible.
25
+ field :page, T.nilable(::String), { 'query_param': { 'field_name': 'page', 'style': 'form', 'explode': true } }
26
+ # The number of results per page
27
+ field :page_size, T.nilable(::String), { 'query_param': { 'field_name': 'page_size', 'style': 'form', 'explode': true } }
28
+ # Query parameters that can be used to pass through parameters to the underlying provider request by surrounding them with 'proxy' key
29
+ field :proxy, T.nilable(T::Hash[Symbol, ::Object]), { 'query_param': { 'field_name': 'proxy', 'style': 'deepObject', 'explode': true } }
30
+ # Indicates that the raw request result is returned
31
+ field :raw, T.nilable(T::Boolean), { 'query_param': { 'field_name': 'raw', 'style': 'form', 'explode': true } }
32
+ # Use a string with a date to only select results updated after that given date
33
+ #
34
+ # @deprecated true: This will be removed in a future release, please migrate away from it as soon as possible.
35
+ field :updated_after, T.nilable(::String), { 'query_param': { 'field_name': 'updated_after', 'style': 'form', 'explode': true } }
36
+
37
+
38
+ sig { params(x_account_id: ::String, fields_: T.nilable(::String), filter: T.nilable(::StackOne::Operations::HrisListTimeOffPoliciesQueryParamFilter), next_: T.nilable(::String), page: T.nilable(::String), page_size: T.nilable(::String), proxy: T.nilable(T::Hash[Symbol, ::Object]), raw: T.nilable(T::Boolean), updated_after: T.nilable(::String)).void }
39
+ def initialize(x_account_id: nil, fields_: nil, filter: nil, next_: nil, page: nil, page_size: nil, proxy: nil, raw: nil, updated_after: nil)
40
+ @x_account_id = x_account_id
41
+ @fields_ = fields_
42
+ @filter = filter
43
+ @next_ = next_
44
+ @page = page
45
+ @page_size = page_size
46
+ @proxy = proxy
47
+ @raw = raw
48
+ @updated_after = updated_after
49
+ end
50
+ end
51
+ end
52
+ end
@@ -0,0 +1,36 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module StackOne
8
+ module Operations
9
+
10
+
11
+ class HrisListTimeOffPoliciesResponse < ::StackOne::Utils::FieldAugmented
12
+ extend T::Sig
13
+
14
+ # HTTP response content type for this operation
15
+ field :content_type, ::String
16
+
17
+ field :headers, T::Hash[Symbol, T::Array[::String]]
18
+ # Raw HTTP response; suitable for custom response parsing
19
+ field :raw_response, ::Faraday::Response
20
+ # HTTP response status code for this operation
21
+ field :status_code, ::Integer
22
+ # The list of time off policies was retrieved.
23
+ field :time_off_policies_paginated, T.nilable(::StackOne::Shared::TimeOffPoliciesPaginated)
24
+
25
+
26
+ sig { params(content_type: ::String, headers: T::Hash[Symbol, T::Array[::String]], raw_response: ::Faraday::Response, status_code: ::Integer, time_off_policies_paginated: T.nilable(::StackOne::Shared::TimeOffPoliciesPaginated)).void }
27
+ def initialize(content_type: nil, headers: nil, raw_response: nil, status_code: nil, time_off_policies_paginated: nil)
28
+ @content_type = content_type
29
+ @headers = headers
30
+ @raw_response = raw_response
31
+ @status_code = status_code
32
+ @time_off_policies_paginated = time_off_policies_paginated
33
+ end
34
+ end
35
+ end
36
+ end
@@ -11,17 +11,14 @@ module StackOne
11
11
  class LmsListAssignmentsQueryParamFilter < ::StackOne::Utils::FieldAugmented
12
12
  extend T::Sig
13
13
 
14
- # Filter to select assignment by learning object type.
15
- field :learning_object_type, T.nilable(::StackOne::Operations::LearningObjectType), { 'query_param': { 'field_name': 'learning_object_type' } }
16
14
  # Filter to select assignment by status
17
15
  field :status, T.nilable(::StackOne::Operations::QueryParamStatus), { 'query_param': { 'field_name': 'status' } }
18
16
  # Use a string with a date to only select results updated after that given date
19
17
  field :updated_after, T.nilable(::String), { 'query_param': { 'field_name': 'updated_after' } }
20
18
 
21
19
 
22
- sig { params(learning_object_type: T.nilable(::StackOne::Operations::LearningObjectType), status: T.nilable(::StackOne::Operations::QueryParamStatus), updated_after: T.nilable(::String)).void }
23
- def initialize(learning_object_type: nil, status: nil, updated_after: nil)
24
- @learning_object_type = learning_object_type
20
+ sig { params(status: T.nilable(::StackOne::Operations::QueryParamStatus), updated_after: T.nilable(::String)).void }
21
+ def initialize(status: nil, updated_after: nil)
25
22
  @status = status
26
23
  @updated_after = updated_after
27
24
  end
@@ -11,15 +11,12 @@ module StackOne
11
11
  class LmsListCompletionsQueryParamFilter < ::StackOne::Utils::FieldAugmented
12
12
  extend T::Sig
13
13
 
14
- # Filter to select completions by learning object type.
15
- field :learning_object_type, T.nilable(::StackOne::Operations::QueryParamLearningObjectType), { 'query_param': { 'field_name': 'learning_object_type' } }
16
14
  # Use a string with a date to only select results updated after that given date
17
15
  field :updated_after, T.nilable(::String), { 'query_param': { 'field_name': 'updated_after' } }
18
16
 
19
17
 
20
- sig { params(learning_object_type: T.nilable(::StackOne::Operations::QueryParamLearningObjectType), updated_after: T.nilable(::String)).void }
21
- def initialize(learning_object_type: nil, updated_after: nil)
22
- @learning_object_type = learning_object_type
18
+ sig { params(updated_after: T.nilable(::String)).void }
19
+ def initialize(updated_after: nil)
23
20
  @updated_after = updated_after
24
21
  end
25
22
  end
@@ -11,17 +11,14 @@ module StackOne
11
11
  class LmsListUserAssignmentsQueryParamFilter < ::StackOne::Utils::FieldAugmented
12
12
  extend T::Sig
13
13
 
14
- # Filter to select assignment by learning object type.
15
- field :learning_object_type, T.nilable(::StackOne::Operations::LmsListUserAssignmentsQueryParamLearningObjectType), { 'query_param': { 'field_name': 'learning_object_type' } }
16
14
  # Filter to select assignment by status
17
15
  field :status, T.nilable(::StackOne::Operations::LmsListUserAssignmentsQueryParamStatus), { 'query_param': { 'field_name': 'status' } }
18
16
  # Use a string with a date to only select results updated after that given date
19
17
  field :updated_after, T.nilable(::String), { 'query_param': { 'field_name': 'updated_after' } }
20
18
 
21
19
 
22
- sig { params(learning_object_type: T.nilable(::StackOne::Operations::LmsListUserAssignmentsQueryParamLearningObjectType), status: T.nilable(::StackOne::Operations::LmsListUserAssignmentsQueryParamStatus), updated_after: T.nilable(::String)).void }
23
- def initialize(learning_object_type: nil, status: nil, updated_after: nil)
24
- @learning_object_type = learning_object_type
20
+ sig { params(status: T.nilable(::StackOne::Operations::LmsListUserAssignmentsQueryParamStatus), updated_after: T.nilable(::String)).void }
21
+ def initialize(status: nil, updated_after: nil)
25
22
  @status = status
26
23
  @updated_after = updated_after
27
24
  end
@@ -11,15 +11,12 @@ module StackOne
11
11
  class LmsListUserCompletionsQueryParamFilter < ::StackOne::Utils::FieldAugmented
12
12
  extend T::Sig
13
13
 
14
- # Filter to select completions by learning object type.
15
- field :learning_object_type, T.nilable(::StackOne::Operations::LmsListUserCompletionsQueryParamLearningObjectType), { 'query_param': { 'field_name': 'learning_object_type' } }
16
14
  # Use a string with a date to only select results updated after that given date
17
15
  field :updated_after, T.nilable(::String), { 'query_param': { 'field_name': 'updated_after' } }
18
16
 
19
17
 
20
- sig { params(learning_object_type: T.nilable(::StackOne::Operations::LmsListUserCompletionsQueryParamLearningObjectType), updated_after: T.nilable(::String)).void }
21
- def initialize(learning_object_type: nil, updated_after: nil)
22
- @learning_object_type = learning_object_type
18
+ sig { params(updated_after: T.nilable(::String)).void }
19
+ def initialize(updated_after: nil)
23
20
  @updated_after = updated_after
24
21
  end
25
22
  end
@@ -250,6 +250,8 @@ module StackOne
250
250
  autoload :HrisGetEmployeeDocumentCategoryResponse, 'stack_one/models/operations/hris_get_employee_document_category_response.rb'
251
251
  autoload :HrisGetEmployeeEmploymentRequest, 'stack_one/models/operations/hris_get_employee_employment_request.rb'
252
252
  autoload :HrisGetEmployeeEmploymentResponse, 'stack_one/models/operations/hris_get_employee_employment_response.rb'
253
+ autoload :HrisGetEmployeeTimeOffBalanceRequest, 'stack_one/models/operations/hris_get_employee_time_off_balance_request.rb'
254
+ autoload :HrisGetEmployeeTimeOffBalanceResponse, 'stack_one/models/operations/hris_get_employee_time_off_balance_response.rb'
253
255
  autoload :HrisGetEmployeesTimeOffRequestRequest, 'stack_one/models/operations/hris_get_employees_time_off_request_request.rb'
254
256
  autoload :HrisGetEmployeesTimeOffRequestResponse, 'stack_one/models/operations/hris_get_employees_time_off_request_response.rb'
255
257
  autoload :HrisGetEmployeesWorkEligibilityRequest, 'stack_one/models/operations/hris_get_employees_work_eligibility_request.rb'
@@ -266,10 +268,14 @@ module StackOne
266
268
  autoload :HrisGetTeamGroupResponse, 'stack_one/models/operations/hris_get_team_group_response.rb'
267
269
  autoload :HrisGetTimeEntriesRequest, 'stack_one/models/operations/hris_get_time_entries_request.rb'
268
270
  autoload :HrisGetTimeEntriesResponse, 'stack_one/models/operations/hris_get_time_entries_response.rb'
271
+ autoload :HrisGetTimeOffPolicyRequest, 'stack_one/models/operations/hris_get_time_off_policy_request.rb'
272
+ autoload :HrisGetTimeOffPolicyResponse, 'stack_one/models/operations/hris_get_time_off_policy_response.rb'
269
273
  autoload :HrisGetTimeOffRequestRequest, 'stack_one/models/operations/hris_get_time_off_request_request.rb'
270
274
  autoload :HrisGetTimeOffRequestResponse, 'stack_one/models/operations/hris_get_time_off_request_response.rb'
271
275
  autoload :HrisGetTimeOffTypeRequest, 'stack_one/models/operations/hris_get_time_off_type_request.rb'
272
276
  autoload :HrisGetTimeOffTypeResponse, 'stack_one/models/operations/hris_get_time_off_type_response.rb'
277
+ autoload :HrisInviteEmployeeRequest, 'stack_one/models/operations/hris_invite_employee_request.rb'
278
+ autoload :HrisInviteEmployeeResponse, 'stack_one/models/operations/hris_invite_employee_response.rb'
273
279
  autoload :HrisListBenefitsQueryParamFilter, 'stack_one/models/operations/hris_list_benefits_queryparam_filter.rb'
274
280
  autoload :HrisListBenefitsRequest, 'stack_one/models/operations/hris_list_benefits_request.rb'
275
281
  autoload :HrisListBenefitsResponse, 'stack_one/models/operations/hris_list_benefits_response.rb'
@@ -294,6 +300,9 @@ module StackOne
294
300
  autoload :HrisListEmployeeEmploymentsQueryParamFilter, 'stack_one/models/operations/hris_list_employee_employments_queryparam_filter.rb'
295
301
  autoload :HrisListEmployeeEmploymentsRequest, 'stack_one/models/operations/hris_list_employee_employments_request.rb'
296
302
  autoload :HrisListEmployeeEmploymentsResponse, 'stack_one/models/operations/hris_list_employee_employments_response.rb'
303
+ autoload :HrisListEmployeeTimeOffBalancesQueryParamFilter, 'stack_one/models/operations/hris_list_employee_time_off_balances_queryparam_filter.rb'
304
+ autoload :HrisListEmployeeTimeOffBalancesRequest, 'stack_one/models/operations/hris_list_employee_time_off_balances_request.rb'
305
+ autoload :HrisListEmployeeTimeOffBalancesResponse, 'stack_one/models/operations/hris_list_employee_time_off_balances_response.rb'
297
306
  autoload :HrisListEmployeeTimeOffRequestsQueryParamFilter, 'stack_one/models/operations/hris_list_employee_time_off_requests_queryparam_filter.rb'
298
307
  autoload :HrisListEmployeeTimeOffRequestsRequest, 'stack_one/models/operations/hris_list_employee_time_off_requests_request.rb'
299
308
  autoload :HrisListEmployeeTimeOffRequestsResponse, 'stack_one/models/operations/hris_list_employee_time_off_requests_response.rb'
@@ -321,6 +330,9 @@ module StackOne
321
330
  autoload :HrisListTimeEntriesQueryParamFilter, 'stack_one/models/operations/hris_list_time_entries_queryparam_filter.rb'
322
331
  autoload :HrisListTimeEntriesRequest, 'stack_one/models/operations/hris_list_time_entries_request.rb'
323
332
  autoload :HrisListTimeEntriesResponse, 'stack_one/models/operations/hris_list_time_entries_response.rb'
333
+ autoload :HrisListTimeOffPoliciesQueryParamFilter, 'stack_one/models/operations/hris_list_time_off_policies_queryparam_filter.rb'
334
+ autoload :HrisListTimeOffPoliciesRequest, 'stack_one/models/operations/hris_list_time_off_policies_request.rb'
335
+ autoload :HrisListTimeOffPoliciesResponse, 'stack_one/models/operations/hris_list_time_off_policies_response.rb'
324
336
  autoload :HrisListTimeOffRequestsQueryParamFilter, 'stack_one/models/operations/hris_list_time_off_requests_queryparam_filter.rb'
325
337
  autoload :HrisListTimeOffRequestsRequest, 'stack_one/models/operations/hris_list_time_off_requests_request.rb'
326
338
  autoload :HrisListTimeOffRequestsResponse, 'stack_one/models/operations/hris_list_time_off_requests_response.rb'
@@ -387,7 +399,6 @@ module StackOne
387
399
  autoload :LmsGetUserAssignmentResponse, 'stack_one/models/operations/lms_get_user_assignment_response.rb'
388
400
  autoload :LmsGetUserCompletionRequest, 'stack_one/models/operations/lms_get_user_completion_request.rb'
389
401
  autoload :LmsGetUserCompletionResponse, 'stack_one/models/operations/lms_get_user_completion_response.rb'
390
- autoload :LearningObjectType, 'stack_one/models/operations/learning_object_type.rb'
391
402
  autoload :QueryParamStatus, 'stack_one/models/operations/queryparam_status.rb'
392
403
  autoload :LmsListAssignmentsQueryParamFilter, 'stack_one/models/operations/lms_list_assignments_queryparam_filter.rb'
393
404
  autoload :LmsListAssignmentsRequest, 'stack_one/models/operations/lms_list_assignments_request.rb'
@@ -395,7 +406,6 @@ module StackOne
395
406
  autoload :LmsListCategoriesQueryParamFilter, 'stack_one/models/operations/lms_list_categories_queryparam_filter.rb'
396
407
  autoload :LmsListCategoriesRequest, 'stack_one/models/operations/lms_list_categories_request.rb'
397
408
  autoload :LmsListCategoriesResponse, 'stack_one/models/operations/lms_list_categories_response.rb'
398
- autoload :QueryParamLearningObjectType, 'stack_one/models/operations/queryparam_learning_object_type.rb'
399
409
  autoload :LmsListCompletionsQueryParamFilter, 'stack_one/models/operations/lms_list_completions_queryparam_filter.rb'
400
410
  autoload :LmsListCompletionsRequest, 'stack_one/models/operations/lms_list_completions_request.rb'
401
411
  autoload :LmsListCompletionsResponse, 'stack_one/models/operations/lms_list_completions_response.rb'
@@ -408,12 +418,10 @@ module StackOne
408
418
  autoload :LmsListSkillsQueryParamFilter, 'stack_one/models/operations/lms_list_skills_queryparam_filter.rb'
409
419
  autoload :LmsListSkillsRequest, 'stack_one/models/operations/lms_list_skills_request.rb'
410
420
  autoload :LmsListSkillsResponse, 'stack_one/models/operations/lms_list_skills_response.rb'
411
- autoload :LmsListUserAssignmentsQueryParamLearningObjectType, 'stack_one/models/operations/lms_list_user_assignments_queryparam_learning_object_type.rb'
412
421
  autoload :LmsListUserAssignmentsQueryParamStatus, 'stack_one/models/operations/lms_list_user_assignments_queryparam_status.rb'
413
422
  autoload :LmsListUserAssignmentsQueryParamFilter, 'stack_one/models/operations/lms_list_user_assignments_queryparam_filter.rb'
414
423
  autoload :LmsListUserAssignmentsRequest, 'stack_one/models/operations/lms_list_user_assignments_request.rb'
415
424
  autoload :LmsListUserAssignmentsResponse, 'stack_one/models/operations/lms_list_user_assignments_response.rb'
416
- autoload :LmsListUserCompletionsQueryParamLearningObjectType, 'stack_one/models/operations/lms_list_user_completions_queryparam_learning_object_type.rb'
417
425
  autoload :LmsListUserCompletionsQueryParamFilter, 'stack_one/models/operations/lms_list_user_completions_queryparam_filter.rb'
418
426
  autoload :LmsListUserCompletionsRequest, 'stack_one/models/operations/lms_list_user_completions_request.rb'
419
427
  autoload :LmsListUserCompletionsResponse, 'stack_one/models/operations/lms_list_user_completions_response.rb'
@@ -0,0 +1,27 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module StackOne
8
+ module Shared
9
+
10
+ # The duration unit of the current balance
11
+ class BalanceUnit < ::StackOne::Utils::FieldAugmented
12
+ extend T::Sig
13
+
14
+
15
+ field :source_value, T.nilable(::Object), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('source_value') } }
16
+
17
+ field :value, T.nilable(::StackOne::Shared::TimeOffBalancesValue), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('value'), 'decoder': Utils.enum_from_string(::StackOne::Shared::TimeOffBalancesValue, true) } }
18
+
19
+
20
+ sig { params(source_value: T.nilable(::Object), value: T.nilable(::StackOne::Shared::TimeOffBalancesValue)).void }
21
+ def initialize(source_value: nil, value: nil)
22
+ @source_value = source_value
23
+ @value = value
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,24 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module StackOne
8
+ module Shared
9
+
10
+
11
+ class HrisInviteEmployeeRequestDto < ::StackOne::Utils::FieldAugmented
12
+ extend T::Sig
13
+
14
+ # Value to pass through to the provider
15
+ field :passthrough, T.nilable(T::Hash[Symbol, ::Object]), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('passthrough') } }
16
+
17
+
18
+ sig { params(passthrough: T.nilable(T::Hash[Symbol, ::Object])).void }
19
+ def initialize(passthrough: nil)
20
+ @passthrough = passthrough
21
+ end
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,33 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module StackOne
8
+ module Shared
9
+
10
+
11
+ class InviteEmployeeResult < ::StackOne::Utils::FieldAugmented
12
+ extend T::Sig
13
+
14
+
15
+ field :data, ::StackOne::Shared::CreateResultDataApiModel, { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('data') } }
16
+
17
+ field :message, ::String, { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('message') } }
18
+
19
+ field :status_code, ::Float, { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('statusCode') } }
20
+
21
+ field :timestamp, ::DateTime, { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('timestamp'), 'decoder': Utils.datetime_from_iso_format(false) } }
22
+
23
+
24
+ sig { params(data: ::StackOne::Shared::CreateResultDataApiModel, message: ::String, status_code: ::Float, timestamp: ::DateTime).void }
25
+ def initialize(data: nil, message: nil, status_code: nil, timestamp: nil)
26
+ @data = data
27
+ @message = message
28
+ @status_code = status_code
29
+ @timestamp = timestamp
30
+ end
31
+ end
32
+ end
33
+ end
@@ -0,0 +1,42 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module StackOne
8
+ module Shared
9
+
10
+ # The time off policy associated with this balance
11
+ class Policy < ::StackOne::Utils::FieldAugmented
12
+ extend T::Sig
13
+
14
+ # The created_at date of this policy
15
+ field :created_at, T.nilable(::DateTime), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('created_at'), 'decoder': Utils.datetime_from_iso_format(true) } }
16
+ # The description of this policy
17
+ field :description, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('description') } }
18
+ # Unique identifier
19
+ field :id, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('id') } }
20
+ # The name of this policy
21
+ field :name, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('name') } }
22
+ # Provider's unique identifier
23
+ field :remote_id, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('remote_id') } }
24
+ # The type of this policy
25
+ field :type, T.nilable(::StackOne::Shared::TimeOffBalancesType), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('type') } }
26
+ # The updated_at date of this policy
27
+ field :updated_at, T.nilable(::DateTime), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('updated_at'), 'decoder': Utils.datetime_from_iso_format(true) } }
28
+
29
+
30
+ sig { params(created_at: T.nilable(::DateTime), description: T.nilable(::String), id: T.nilable(::String), name: T.nilable(::String), remote_id: T.nilable(::String), type: T.nilable(::StackOne::Shared::TimeOffBalancesType), updated_at: T.nilable(::DateTime)).void }
31
+ def initialize(created_at: nil, description: nil, id: nil, name: nil, remote_id: nil, type: nil, updated_at: nil)
32
+ @created_at = created_at
33
+ @description = description
34
+ @id = id
35
+ @name = name
36
+ @remote_id = remote_id
37
+ @type = type
38
+ @updated_at = updated_at
39
+ end
40
+ end
41
+ end
42
+ end
@@ -0,0 +1,27 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module StackOne
8
+ module Shared
9
+
10
+
11
+ class TimeOffBalanceResult < ::StackOne::Utils::FieldAugmented
12
+ extend T::Sig
13
+
14
+
15
+ field :data, ::StackOne::Shared::TimeOffBalances, { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('data') } }
16
+
17
+ field :raw, T.nilable(T::Array[::StackOne::Shared::RawResponse]), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('raw') } }
18
+
19
+
20
+ sig { params(data: ::StackOne::Shared::TimeOffBalances, raw: T.nilable(T::Array[::StackOne::Shared::RawResponse])).void }
21
+ def initialize(data: nil, raw: nil)
22
+ @data = data
23
+ @raw = raw
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,54 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module StackOne
8
+ module Shared
9
+
10
+
11
+ class TimeOffBalances < ::StackOne::Utils::FieldAugmented
12
+ extend T::Sig
13
+
14
+ # The date of when the current balance expires
15
+ field :balance_expiry_date, T.nilable(::DateTime), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('balance_expiry_date'), 'decoder': Utils.datetime_from_iso_format(true) } }
16
+ # The date of when the initial balance quantity was set
17
+ field :balance_start_date, T.nilable(::DateTime), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('balance_start_date'), 'decoder': Utils.datetime_from_iso_format(true) } }
18
+ # The duration unit of the current balance
19
+ field :balance_unit, T.nilable(::StackOne::Shared::BalanceUnit), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('balance_unit') } }
20
+ # The current numeric balance for the associated employee and time off policy
21
+ field :current_balance, T.nilable(::Float), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('current_balance') } }
22
+ # The employee id associated with this balance
23
+ field :employee_id, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('employee_id') } }
24
+ # Unique identifier
25
+ field :id, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('id') } }
26
+ # The initial numeric balance for the associated employee and time off policy as of the balance start date
27
+ field :initial_balance, T.nilable(::Float), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('initial_balance') } }
28
+ # The time off policy associated with this balance
29
+ field :policy, T.nilable(::StackOne::Shared::Policy), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('policy') } }
30
+ # The time off policy id associated with this balance
31
+ field :policy_id, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('policy_id') } }
32
+ # Provider's unique identifier
33
+ field :remote_id, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('remote_id') } }
34
+ # The updated_at date of this time off balance
35
+ field :updated_at, T.nilable(::DateTime), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('updated_at'), 'decoder': Utils.datetime_from_iso_format(true) } }
36
+
37
+
38
+ sig { params(balance_expiry_date: T.nilable(::DateTime), balance_start_date: T.nilable(::DateTime), balance_unit: T.nilable(::StackOne::Shared::BalanceUnit), current_balance: T.nilable(::Float), employee_id: T.nilable(::String), id: T.nilable(::String), initial_balance: T.nilable(::Float), policy: T.nilable(::StackOne::Shared::Policy), policy_id: T.nilable(::String), remote_id: T.nilable(::String), updated_at: T.nilable(::DateTime)).void }
39
+ def initialize(balance_expiry_date: nil, balance_start_date: nil, balance_unit: nil, current_balance: nil, employee_id: nil, id: nil, initial_balance: nil, policy: nil, policy_id: nil, remote_id: nil, updated_at: nil)
40
+ @balance_expiry_date = balance_expiry_date
41
+ @balance_start_date = balance_start_date
42
+ @balance_unit = balance_unit
43
+ @current_balance = current_balance
44
+ @employee_id = employee_id
45
+ @id = id
46
+ @initial_balance = initial_balance
47
+ @policy = policy
48
+ @policy_id = policy_id
49
+ @remote_id = remote_id
50
+ @updated_at = updated_at
51
+ end
52
+ end
53
+ end
54
+ end
@@ -0,0 +1,26 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module StackOne
8
+ module Shared
9
+
10
+
11
+ class TimeOffBalancesSchemasValue < T::Enum
12
+ enums do
13
+ PAID = new('paid')
14
+ UNPAID = new('unpaid')
15
+ HOLIDAY = new('holiday')
16
+ VACATION = new('vacation')
17
+ SICK = new('sick')
18
+ PERSONAL = new('personal')
19
+ IN_LIEU = new('in_lieu')
20
+ BEREAVEMENT = new('bereavement')
21
+ JURY_DUTY = new('jury_duty')
22
+ UNMAPPED_VALUE = new('unmapped_value')
23
+ end
24
+ end
25
+ end
26
+ end
@@ -0,0 +1,27 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module StackOne
8
+ module Shared
9
+
10
+ # The type of this policy
11
+ class TimeOffBalancesType < ::StackOne::Utils::FieldAugmented
12
+ extend T::Sig
13
+
14
+
15
+ field :source_value, T.nilable(::Object), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('source_value') } }
16
+
17
+ field :value, T.nilable(::StackOne::Shared::TimeOffBalancesSchemasValue), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('value'), 'decoder': Utils.enum_from_string(::StackOne::Shared::TimeOffBalancesSchemasValue, true) } }
18
+
19
+
20
+ sig { params(source_value: T.nilable(::Object), value: T.nilable(::StackOne::Shared::TimeOffBalancesSchemasValue)).void }
21
+ def initialize(source_value: nil, value: nil)
22
+ @source_value = source_value
23
+ @value = value
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,22 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module StackOne
8
+ module Shared
9
+
10
+
11
+ class TimeOffBalancesValue < T::Enum
12
+ enums do
13
+ MINUTES = new('minutes')
14
+ HOURS = new('hours')
15
+ DAYS = new('days')
16
+ WEEKS = new('weeks')
17
+ MONTHS = new('months')
18
+ YEARS = new('years')
19
+ end
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,30 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module StackOne
8
+ module Shared
9
+
10
+
11
+ class TimeOffBalancesPaginated < ::StackOne::Utils::FieldAugmented
12
+ extend T::Sig
13
+
14
+
15
+ field :data, T::Array[::StackOne::Shared::TimeOffBalances], { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('data') } }
16
+
17
+ field :next_, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('next') } }
18
+
19
+ field :raw, T.nilable(T::Array[::StackOne::Shared::RawResponse]), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('raw') } }
20
+
21
+
22
+ sig { params(data: T::Array[::StackOne::Shared::TimeOffBalances], next_: T.nilable(::String), raw: T.nilable(T::Array[::StackOne::Shared::RawResponse])).void }
23
+ def initialize(data: nil, next_: nil, raw: nil)
24
+ @data = data
25
+ @next_ = next_
26
+ @raw = raw
27
+ end
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,42 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module StackOne
8
+ module Shared
9
+
10
+
11
+ class TimeOffPolicies < ::StackOne::Utils::FieldAugmented
12
+ extend T::Sig
13
+
14
+ # The created_at date of this policy
15
+ field :created_at, T.nilable(::DateTime), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('created_at'), 'decoder': Utils.datetime_from_iso_format(true) } }
16
+ # The description of this policy
17
+ field :description, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('description') } }
18
+ # Unique identifier
19
+ field :id, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('id') } }
20
+ # The name of this policy
21
+ field :name, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('name') } }
22
+ # Provider's unique identifier
23
+ field :remote_id, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('remote_id') } }
24
+ # The type of this policy
25
+ field :type, T.nilable(::StackOne::Shared::TimeOffPoliciesType), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('type') } }
26
+ # The updated_at date of this policy
27
+ field :updated_at, T.nilable(::DateTime), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('updated_at'), 'decoder': Utils.datetime_from_iso_format(true) } }
28
+
29
+
30
+ sig { params(created_at: T.nilable(::DateTime), description: T.nilable(::String), id: T.nilable(::String), name: T.nilable(::String), remote_id: T.nilable(::String), type: T.nilable(::StackOne::Shared::TimeOffPoliciesType), updated_at: T.nilable(::DateTime)).void }
31
+ def initialize(created_at: nil, description: nil, id: nil, name: nil, remote_id: nil, type: nil, updated_at: nil)
32
+ @created_at = created_at
33
+ @description = description
34
+ @id = id
35
+ @name = name
36
+ @remote_id = remote_id
37
+ @type = type
38
+ @updated_at = updated_at
39
+ end
40
+ end
41
+ end
42
+ end
@@ -0,0 +1,27 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module StackOne
8
+ module Shared
9
+
10
+ # The type of this policy
11
+ class TimeOffPoliciesType < ::StackOne::Utils::FieldAugmented
12
+ extend T::Sig
13
+
14
+
15
+ field :source_value, T.nilable(::Object), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('source_value') } }
16
+
17
+ field :value, T.nilable(::StackOne::Shared::TimeOffPoliciesValue), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('value'), 'decoder': Utils.enum_from_string(::StackOne::Shared::TimeOffPoliciesValue, true) } }
18
+
19
+
20
+ sig { params(source_value: T.nilable(::Object), value: T.nilable(::StackOne::Shared::TimeOffPoliciesValue)).void }
21
+ def initialize(source_value: nil, value: nil)
22
+ @source_value = source_value
23
+ @value = value
24
+ end
25
+ end
26
+ end
27
+ end