mirror of
https://github.com/HoneyryderChuck/httpx.git
synced 2025-10-04 00:00:37 -04:00
45 lines
1.4 KiB
Plaintext
45 lines
1.4 KiB
Plaintext
module HTTPX
|
|
module Plugins
|
|
module Multipart
|
|
def self.load_dependencies: (singleton(Session)) -> void
|
|
def self.configure: (*untyped) -> void
|
|
def self?.encode: (untyped) -> (Encoder | Transcoder::Form::Encoder)
|
|
|
|
type multipart_value = string | Pathname | File | _Reader
|
|
|
|
type record_multipart_value = multipart_value |
|
|
{ content_type: String, filename: String, body: multipart_value } |
|
|
{ content_type: String, body: multipart_value }
|
|
|
|
type multipart_nested_value = multipart_value | _ToAry[multipart_value] | _ToHash[string, multipart_value]
|
|
|
|
type multipart_input = Enumerable[[string, multipart_value], untyped]
|
|
|
|
class Encoder
|
|
include Transcoder::_Encoder
|
|
include _Reader
|
|
|
|
def content_type: () -> String
|
|
|
|
private
|
|
|
|
def initialize: (Hash[Symbol | string, multipart_nested_value] multipart_data) -> untyped
|
|
|
|
def header_part: (string key, String content_type, String? filename) -> StringIO
|
|
|
|
def read_chunks: (String buffer, Integer? length) -> void
|
|
|
|
def read_from_part: (Integer? max_length) -> void
|
|
end
|
|
|
|
module Part
|
|
def self?.call: (multipart_nested_value) -> ([_Reader, String, String?])
|
|
end
|
|
|
|
module MimeTypeDetector
|
|
def self?.call: (IO file, ?String filename) -> String?
|
|
end
|
|
end
|
|
end
|
|
end
|