tauth-sdk/src/schema.ts

37 lines
787 B
TypeScript

import z, { ZodObject } from "zod";
export function createSchema(appData: ZodObject) {
return {
identification: {
request: z.object({
app_identifier: z.string(),
app_session_id: z.number(),
app_public_key: z.string(),
user_id: z.number(),
}),
response: z.object({
challenge: z.base64(),
public_key: z.base64(),
}),
},
challenge_response: {
request: z.object({
challenge: z.base64(),
}),
response: z.object({}),
},
load_app_data: {
request: z.object({}),
response: z.object({
app_data: z.string(),
}),
},
save_app_data: {
request: z.object({
app_data: z.string(),
}),
response: z.object({}),
},
};
}