bigbuffet-rw/packages/pl-api/lib/entities/interaction-request.ts
marcin mikołajczak 036fa32cd3 Add pl-api to workspace
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-08-28 13:43:23 +02:00

23 lines
838 B
TypeScript

import { z } from 'zod';
import { Resolve } from '../utils/types';
import { accountSchema } from './account';
import { statusSchema } from './status';
/** @see {@link https://docs.gotosocial.org/en/latest/api/swagger.yaml#/definitions/interactionRequest} */
const interactionRequestSchema = z.object({
accepted_at: z.string().datetime().nullable().catch(null),
account: accountSchema,
created_at: z.string().datetime(),
id: z.string(),
rejected_at: z.string().datetime().nullable().catch(null),
reply: statusSchema.nullable().catch(null),
status: statusSchema.nullable().catch(null),
type: z.enum(['favourite', 'reply', 'reblog']),
uri: z.string().nullable().catch(null),
});
type InteractionRequest = Resolve<z.infer<typeof interactionRequestSchema>>;
export { interactionRequestSchema, type InteractionRequest };