diff --git a/keyserver/src/responders/siwe-nonce-responders.js b/keyserver/src/responders/siwe-nonce-responders.js --- a/keyserver/src/responders/siwe-nonce-responders.js +++ b/keyserver/src/responders/siwe-nonce-responders.js @@ -1,6 +1,25 @@ // @flow -async function siweNonceResponder(): Promise { +import t from 'tcomb'; + +import type { + SIWENonceRequest, + SIWENonceResponse, +} from 'lib/types/siwe-types.js'; +import { tShape } from 'lib/utils/validation-utils'; + +import type { Viewer } from '../session/viewer.js'; +import { validateInput } from '../utils/validation-utils.js'; + +const siweNonceRequestInputValidator = tShape({ + walletAddress: t.String, +}); +async function siweNonceResponder( + viewer: Viewer, + input: any, +): Promise { + const request: SIWENonceRequest = input; + await validateInput(viewer, siweNonceRequestInputValidator, request); return 'UNIMPLEMENTED'; } diff --git a/lib/types/siwe-types.js b/lib/types/siwe-types.js new file mode 100644 --- /dev/null +++ b/lib/types/siwe-types.js @@ -0,0 +1,9 @@ +// @flow + +export type SIWENonceRequest = { + +walletAddress: string, +}; + +export type SIWENonceResponse = { + +nonce: string, +};