-module(howdy@router). -compile(no_auto_import). -export_type([route/1]). -type route(ICZ) :: {get, binary(), fun((howdy@context:context(ICZ)) -> gleam@http@response:response(gleam@bit_builder:bit_builder()))} | {post, binary(), fun((howdy@context:context(ICZ)) -> gleam@http@response:response(gleam@bit_builder:bit_builder()))} | {put, binary(), fun((howdy@context:context(ICZ)) -> gleam@http@response:response(gleam@bit_builder:bit_builder()))} | {patch, binary(), fun((howdy@context:context(ICZ)) -> gleam@http@response:response(gleam@bit_builder:bit_builder()))} | {custom, binary(), binary(), fun((howdy@context:context(ICZ)) -> gleam@http@response:response(gleam@bit_builder:bit_builder()))} | {delete, binary(), fun((howdy@context:context(ICZ)) -> gleam@http@response:response(gleam@bit_builder:bit_builder()))} | {static, binary(), binary()} | {router_map, binary(), list(route(ICZ))} | {router_map_with_filters, binary(), list(route(ICZ)), list(fun((fun((howdy@context:context(ICZ)) -> gleam@http@response:response(gleam@bit_builder:bit_builder()))) -> fun((howdy@context:context(ICZ)) -> gleam@http@response:response(gleam@bit_builder:bit_builder()))))} | {spa, binary(), binary()}.