diff --git a/lib/fetch/form_data.rb b/lib/fetch/form_data.rb index 1c250b3..f1f1c78 100644 --- a/lib/fetch/form_data.rb +++ b/lib/fetch/form_data.rb @@ -25,7 +25,7 @@ def initialize attr_reader :entries def append(key, value) - @entries.push [key.to_s, value.is_a?(File) ? value : value.to_s] + @entries.push [key.to_s, File === value ? value : value.to_s] end def delete(key) diff --git a/sig/fetch.rbs b/sig/fetch.rbs index 8ae6c95..dfd4e5d 100644 --- a/sig/fetch.rbs +++ b/sig/fetch.rbs @@ -1,7 +1,3 @@ module Fetch - interface _StringLike - def to_str: () -> String - end - VERSION: String end diff --git a/sig/fetch/_client.rbs b/sig/fetch/_client.rbs index e844807..05183ab 100644 --- a/sig/fetch/_client.rbs +++ b/sig/fetch/_client.rbs @@ -1,5 +1,5 @@ module Fetch class Client - def to_response: (_StringLike, Net::HTTPResponse, bool) -> Response + def to_response: (string, Net::HTTPResponse, bool) -> Response end end diff --git a/sig/fetch/api.rbs b/sig/fetch/api.rbs index f7136b3..cb93cd3 100644 --- a/sig/fetch/api.rbs +++ b/sig/fetch/api.rbs @@ -1,9 +1,9 @@ module Fetch class API def self?.fetch: ( - _StringLike, + string, ?method: String | Symbol, - ?headers: Enumerable[[Object, Object]], + ?headers: _Each[[_ToS, _ToS]], ?body: (String | FormData | URLSearchParams)?, ?redirect: 'follow' | 'error' | 'manual' | :follow | :error | :manual, ) -> Response diff --git a/sig/fetch/client.rbs b/sig/fetch/client.rbs index 5eb782b..a4e9224 100644 --- a/sig/fetch/client.rbs +++ b/sig/fetch/client.rbs @@ -3,9 +3,9 @@ module Fetch include Singleton def fetch: ( - _StringLike, + string, ?method: String | Symbol, - ?headers: Enumerable[[Object, Object]], + ?headers: _Each[[_ToS, _ToS]], ?body: (String | FormData | URLSearchParams)?, ?redirect: 'follow' | 'error' | 'manual' | :follow | :error | :manual, ?_redirected: bool diff --git a/sig/fetch/form_data.rbs b/sig/fetch/form_data.rbs index e763c51..1a06984 100644 --- a/sig/fetch/form_data.rbs +++ b/sig/fetch/form_data.rbs @@ -1,24 +1,24 @@ module Fetch class FormData - type value = String | File - - include Enumerable[[String, value]] + include Enumerable[[String, String | File]] extend Forwardable - attr_reader entries: Array[[String, value]] + attr_reader entries: Array[[String, String | File]] - def self.build: (Enumerable[[Object, Object]]) -> FormData + def self.build: (_Each[[_ToS, _ToS | File]]) -> FormData def initialize: () -> void - def append: (Object, Object) -> void - def delete: (Object) -> void - def get: (Object) -> value? - def get_all: (Object) -> Array[value] - def has: (Object) -> bool + def append: (_ToS, _ToS | File) -> void + def delete: (_ToS) -> void + def get: (_ToS) -> (String | File)? + def get_all: (_ToS) -> Array[String | File] + def has: (_ToS) -> bool def keys: -> Array[String] - def set: (Object, Object) -> void - def values: () -> Array[value] - def each: () { ([String, value]) -> void } -> Array[[String, value]] + def set: (_ToS, _ToS | File) -> void + def values: () -> Array[String | File] + + def each: () { ([String, String | File]) -> void } -> Array[[String, String | File]] + | () -> Enumerator[[String, String | File], Array[[String, String | File]]] end end diff --git a/sig/fetch/headers.rbs b/sig/fetch/headers.rbs index 9238c25..1770d46 100644 --- a/sig/fetch/headers.rbs +++ b/sig/fetch/headers.rbs @@ -4,15 +4,17 @@ module Fetch extend Forwardable - def initialize: (Enumerable[[Object, Object]]) -> void - def append: (Object, Object) -> void - def delete: (Object) -> void + def initialize: (_Each[[_ToS, _ToS]]) -> void + def append: (_ToS, _ToS) -> void + def delete: (_ToS) -> void def entries: () -> Array[[String, String]] - def get: (Object) -> String? - def has: (Object) -> bool + def get: (_ToS) -> String? + def has: (_ToS) -> bool def keys: -> Array[String] - def set: (Object, Object) -> void + def set: (_ToS, _ToS) -> void def values: () -> Array[String] + def each: () { ([String, String]) -> void } -> Array[[String, String]] + | () -> Enumerator[[String, String], Array[[String, String]]] end end diff --git a/sig/fetch/url_search_params.rbs b/sig/fetch/url_search_params.rbs index 0de936e..24f5775 100644 --- a/sig/fetch/url_search_params.rbs +++ b/sig/fetch/url_search_params.rbs @@ -6,17 +6,19 @@ module Fetch attr_reader entries: Array[[String, String]] - def self.build: (Enumerable[[Object, Object]]) -> FormData + def self.build: (_Each[[_ToS, _ToS]]) -> FormData - def initialize: (String | Enumerable[[Object, Object]]) -> void - def append: (Object, Object) -> void - def delete: (Object) -> void - def get: (Object) -> String? - def get_all: (Object) -> Array[String] - def has: (Object) -> bool + def initialize: (String | _Each[[_ToS, _ToS]]) -> void + def append: (_ToS, _ToS) -> void + def delete: (_ToS) -> void + def get: (_ToS) -> String? + def get_all: (_ToS) -> Array[String] + def has: (_ToS) -> bool def keys: -> Array[String] - def set: (Object, Object) -> void + def set: (_ToS, _ToS) -> void def values: () -> Array[String] + def each: () { ([String, String]) -> void } -> Array[[String, String]] + | () -> Enumerator[[String, String], Array[[String, String]]] end end