diff options
Diffstat (limited to 'lib/sharder.mli')
| -rw-r--r-- | lib/sharder.mli | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/lib/sharder.mli b/lib/sharder.mli new file mode 100644 index 0000000..554ed73 --- /dev/null +++ b/lib/sharder.mli @@ -0,0 +1,57 @@ +open Async + +exception Invalid_Payload +exception Failure_to_Establish_Heartbeat + +type t + +val start : + ?count:int -> + unit -> + t Deferred.t + +module Shard : sig + type shard + type 'a t = { + mutable state: 'a; + } + + val heartbeat : + shard -> + shard Deferred.t + + val set_status : + status:Yojson.Safe.json -> + shard -> + shard Deferred.t + + val request_guild_members : + ?query:string -> + ?limit:int -> + guild:Snowflake.t -> + shard -> + shard Deferred.t + + val create : + url:string -> + shards:int * int -> + unit -> + shard Deferred.t +end + +val set_status : + status:Yojson.Safe.json -> + t -> + Shard.shard list Deferred.t + +val set_status_with : + f:(Shard.shard -> Yojson.Safe.json) -> + t -> + Shard.shard list Deferred.t + +val request_guild_members : + ?query:string -> + ?limit:int -> + guild:Snowflake.t -> + t -> + Shard.shard list Deferred.t
\ No newline at end of file |