custom type syntax