import { z } from 'zod';

export const tokenIdParamSchema = z.object({
  id: z.string().uuid(),
});

export const networkIdParamSchema = z.object({
  networkId: z.string().uuid(),
});

export const tokenSymbolParamSchema = z.object({
  symbol: z.string().min(1),
});

export const tokenPricesQuerySchema = z.object({
  symbols: z.string().min(1),
});

export type TokenPricesQueryInput = z.infer<typeof tokenPricesQuerySchema>;

export const tokenLookupSchema = z.object({
  chainId: z.number().int().positive(),
  contractAddress: z.string().min(1).nullable().optional(),
});

export type TokenLookupInput = z.infer<typeof tokenLookupSchema>;
