11// @flow
22
3- export type Webhook = {
4- deviceID : string ,
5- event : string ,
6- errorResponseTopic : string ,
3+ export type Webhook = WebhookMutator & {
4+ created_at : Date ,
75 id : string ,
8- json : { [ key : string ] : Object } ,
9- mydevices : boolean ,
10- productIdOrSlug : ?string ,
11- rejectUnauthorized : boolean ,
12- requestType : RequestType ,
13- responseTemplate : ?string ,
14- responseTopic : string ,
15- url : string ,
166} ;
177
188export type WebhookMutator = {
199 auth ?: { Authorization : string } ,
20- deviceID ?: boolean ,
10+ deviceID ?: string ,
2111 errorResponseTopic ?: string ,
2212 event : string ,
2313 form ?: { [ key : string ] : Object } ,
24- headers ?:{ [ key : string ] : string } ,
14+ headers ?: { [ key : string ] : string } ,
2515 json ?: { [ key : string ] : Object } ,
2616 mydevices ?: boolean ,
2717 noDefaults ?: boolean ,
@@ -69,6 +59,7 @@ export type User = {
6959 created_at : Date ,
7060 id : string ,
7161 passwordHash : string ,
62+ salt : string ,
7263 username : string ,
7364} ;
7465
@@ -77,16 +68,16 @@ export type UserCredentials = {
7768 password : string ,
7869} ;
7970
80- export type Repository < TModel > = {
81- create : ( id : string , model : TModel ) => TModel ,
71+ export type Repository < TModel , TMutator > = {
72+ create : ( model : TMutator ) => TModel ,
8273 deleteById : ( id : string ) => void ,
8374 getAll : ( ) => Array < TModel > ,
8475 getById : ( id : string ) => TModel ,
8576 update : ( id : string , model : TModel ) => TModel ,
8677} ;
8778
88- export type UsersRepository = Repository < User > & {
89- deleteAccessToken : ( accessToken : string ) => void ,
79+ export type UsersRepository = Repository < User , UserCredentials > & {
80+ deleteAccessToken : ( user : User , accessToken : string ) => void ,
9081 getByAccessToken : ( accessToken : string ) => User ,
9182 getByUsername : ( username : string ) => ?User ,
9283 isUserNameInUse : ( username : string ) => boolean ,
@@ -112,6 +103,6 @@ export type Settings = {
112103 serverKeyFile : string ,
113104 serverKeyPassEnvVar : ?string ,
114105 serverKeyPassFile : ?string ,
115- usersRepository : Repository < * > ,
116- webhookRepository : Repository < * > ,
106+ usersRepository : Repository < * , * > ,
107+ webhookRepository : Repository < * , * > ,
117108} ;
0 commit comments