package danielcortes.xyz.models.tipo_egreso;

import java.util.List;
import java.util.Optional;

public interface TipoEgresoDAO {

  /**
   * Obtiene todos los TipoEgreso
   * @return Lista de TipoEgreso
   */
  List<TipoEgreso> getAll();

  /**
   * Obtiene un TipoEgreso dado su Id
   * @param id Id del TipoEgreso
   * @return Un Optional que puede contener el TipoEgreso o puede estar vacio
   */
  Optional<TipoEgreso> getById(int id);

  /**
   * Obtiene un TipoEgreso dado su nombre
   * @param nombre Nombre del TipoEgreso
   * @return Un Optional que puede contener el TipoEgreso o puede estar vacio
   */
  Optional<TipoEgreso> getByNombre(String nombre);
}
