/**
 * App settings types and client-safe schemas.
 *
 * Single-row table for global app configuration (e.g. open signup toggle).
 *
 * @module
 */
import { z } from 'zod';
import { Uuid } from '@fuzdev/fuz_util/id.js';
/** App settings row from the database. */
export interface AppSettings {
    open_signup: boolean;
    updated_at: string | null;
    updated_by: Uuid | null;
}
/** Zod schema for client-safe app settings data. */
export declare const AppSettingsJson: z.ZodObject<{
    open_signup: z.ZodBoolean;
    updated_at: z.ZodNullable<z.ZodString>;
    updated_by: z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
}, z.core.$strict>;
export type AppSettingsJson = z.infer<typeof AppSettingsJson>;
/** Zod schema for admin app settings with resolved updater username. */
export declare const AppSettingsWithUsernameJson: z.ZodObject<{
    open_signup: z.ZodBoolean;
    updated_at: z.ZodNullable<z.ZodString>;
    updated_by: z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
    updated_by_username: z.ZodNullable<z.ZodString>;
}, z.core.$strict>;
export type AppSettingsWithUsernameJson = z.infer<typeof AppSettingsWithUsernameJson>;
/** Zod schema for updating app settings. */
export declare const UpdateAppSettingsInput: z.ZodObject<{
    open_signup: z.ZodBoolean;
}, z.core.$strict>;
export type UpdateAppSettingsInput = z.infer<typeof UpdateAppSettingsInput>;
//# sourceMappingURL=app_settings_schema.d.ts.map