2026-04-28 17:46:34 +02:00
|
|
|
import { usersId, type UsersId } from './Users';
|
2025-10-21 18:42:03 +02:00
|
|
|
import type { ColumnType, Selectable, Insertable, Updateable } from 'kysely';
|
2026-04-28 17:46:34 +02:00
|
|
|
import { z } from 'zod';
|
2025-08-04 17:45:44 +02:00
|
|
|
|
|
|
|
|
/** Identifier type for public.emails */
|
2025-10-21 18:42:03 +02:00
|
|
|
export type EmailsIdEmail = number & { __brand: 'public.emails' };
|
2025-08-04 17:45:44 +02:00
|
|
|
|
|
|
|
|
/** Represents the table public.emails */
|
|
|
|
|
export default interface EmailsTable {
|
2025-10-21 18:42:03 +02:00
|
|
|
id_email: ColumnType<EmailsIdEmail, EmailsIdEmail | undefined, EmailsIdEmail>;
|
2025-08-04 17:45:44 +02:00
|
|
|
|
2025-10-21 18:42:03 +02:00
|
|
|
user_id: ColumnType<UsersId, UsersId, UsersId>;
|
2025-08-04 17:45:44 +02:00
|
|
|
|
2025-10-21 18:42:03 +02:00
|
|
|
created_at: ColumnType<Date, Date | string | undefined, Date | string>;
|
2025-08-04 17:45:44 +02:00
|
|
|
|
2025-10-21 18:42:03 +02:00
|
|
|
data: ColumnType<unknown, unknown, unknown>;
|
2025-08-04 17:45:44 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
export type Emails = Selectable<EmailsTable>;
|
|
|
|
|
|
|
|
|
|
export type NewEmails = Insertable<EmailsTable>;
|
|
|
|
|
|
2026-04-28 17:46:34 +02:00
|
|
|
export type EmailsUpdate = Updateable<EmailsTable>;
|
|
|
|
|
|
|
|
|
|
export const emailsIdEmail = z.number().transform(value => value as EmailsIdEmail);
|
|
|
|
|
|
|
|
|
|
export const EmailsSchema = z.object({
|
|
|
|
|
id_email: emailsIdEmail,
|
|
|
|
|
user_id: usersId,
|
|
|
|
|
created_at: z.date(),
|
|
|
|
|
data: z.unknown(),
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
export const NewEmailsSchema = z.object({
|
|
|
|
|
id_email: emailsIdEmail.optional(),
|
|
|
|
|
user_id: usersId,
|
|
|
|
|
created_at: z.date().optional(),
|
|
|
|
|
data: z.unknown(),
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
export const EmailsUpdateSchema = z.object({
|
|
|
|
|
id_email: emailsIdEmail.optional(),
|
|
|
|
|
user_id: usersId.optional(),
|
|
|
|
|
created_at: z.date().optional(),
|
|
|
|
|
data: z.unknown().optional(),
|
|
|
|
|
});
|