-module(mist@file). -compile(no_auto_import). -export([file_open/2, file_size/1, uri_unquote/1, sendfile/5]). -export_type([file_descriptor/0, file_mode/0]). -type file_descriptor() :: any(). -type file_mode() :: raw. -spec file_open(bitstring(), list(file_mode())) -> {ok, file_descriptor()} | {error, gleam@erlang@atom:atom_()}. file_open(A, B) -> file:open(A, B). -spec file_size(binary()) -> integer(). file_size(A) -> filelib:file_size(A). -spec uri_unquote(binary()) -> binary(). uri_unquote(A) -> uri_string:unquote(A). -spec sendfile( file_descriptor(), glisten@tcp:socket(), integer(), integer(), list(any()) ) -> {ok, integer()} | {error, gleam@erlang@atom:atom_()}. sendfile(A, B, C, D, E) -> file:sendfile(A, B, C, D, E).