-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathapiAchievementStatus.mli
100 lines (86 loc) · 3.17 KB
/
apiAchievementStatus.mli
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
(* ************************************************************************** *)
(* Project: Life - the game, Official OCaml SDK *)
(* Author: db0 ([email protected], http://db0.fr/) *)
(* Latest Version is on GitHub: https://github.com/Life-the-game/SDK-OCaml *)
(* ************************************************************************** *)
(** Achievement statuses API methods *)
open ApiTypes
(* ************************************************************************** *)
(** {3 Type} *)
(* ************************************************************************** *)
type t =
{
info : Info.t;
approvement : Approvable.t;
owner : ApiUser.t;
achievement : ApiAchievement.t;
status : Status.t;
message : string option;
medias : ApiMedia.t list;
nb_comments : int;
url : url;
}
(* ************************************************************************** *)
(** {3 API Methods} *)
(* ************************************************************************** *)
(** Search achievement statuses *)
val search :
req:requirements
-> ?page:Page.parameters
-> ?owner:string
-> ?nb_comments:bool
-> ?achievement:string
-> ?status:Status.t option
-> unit -> t ApiTypes.Page.t Api.t
(** Get achievement statuses *)
val get :
req:requirements
-> ?page:Page.parameters
-> ?term: string list
-> ?nb_comments:bool
-> ?achievements: id list
-> ?with_medias: bool option
-> ?status:Status.t option
-> id -> t ApiTypes.Page.t Api.t
(** Get one achievement status *)
val get_one :
req:requirements
-> ?nb_comments:bool
-> id -> t Api.t
(** Create an achievement status *)
val create :
auth:auth
-> achievement:id
-> status:Status.t
(* PRIVATE *)
-> ?user: id option
(* /PRIVATE *)
-> ?message:string
-> ?medias:file list
-> unit -> t Api.t
(** Edit an achievement status *)
val edit :
auth:auth
-> ?status:Status.t option
-> ?message:string option
-> ?add_medias:file list
-> ?remove_medias:id list
-> id -> t Api.t
(** Approve an achievement status *)
val approve :
auth:auth
(* PRIVATE *)
-> approver: id
(* /PRIVATE *)
-> id -> unit Api.t
(** Disapprove an achievement status *)
val disapprove :
auth:auth
(* PRIVATE *)
-> disapprover: id
(* /PRIVATE *)
-> id -> unit Api.t
(* ************************************************************************** *)
(** {3 Tools} *)
(* ************************************************************************** *)
val from_json : ?nb_comments:bool -> Yojson.Basic.json -> t