- pgSchema "mesh" with 4 tables isolating the peer mesh domain - Enums: visibility, transport, tier, role - audit_log is metadata-only (E2E encryption enforced at broker/client) - Cascade on mesh delete, soft-delete via archivedAt/revokedAt Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
19 lines
409 B
TypeScript
19 lines
409 B
TypeScript
import * as z from "zod";
|
|
|
|
export const checkoutSchema = z.object({
|
|
price: z.object({
|
|
id: z.string(),
|
|
}),
|
|
redirect: z.object({
|
|
success: z.url(),
|
|
cancel: z.url(),
|
|
}),
|
|
});
|
|
|
|
export const getBillingPortalSchema = z.object({
|
|
redirectUrl: z.url(),
|
|
});
|
|
|
|
export type CheckoutPayload = z.infer<typeof checkoutSchema>;
|
|
export type GetBillingPortalPayload = z.infer<typeof getBillingPortalSchema>;
|