import { z } from "zod"; import type { PageableParams, PageableList } from "@/shared/model"; export interface IpParams extends PageableParams { siteId: string; ipAddr?: string; prmYn?: string; } export const ipSchema = z.object({ mngNo: z.number().nullish(), siteId: z.string(), ipAddr: z.string().nonempty(), prmYn: z.string(), mode: z.string(), }); export const ipFormSchema = z.object({ ips: z.array(ipSchema), }); export type IP = z.infer; export type IPFormData = z.infer; export type IpList = PageableList; export interface IpService { getIpList(params: IpParams): Promise; saveIpList(body: IP[]): Promise; }