Sha256: 364c18976b5320e9d50654915f0a4245e790b2d4fa1621303c906f72437f5502

Contents?: true

Size: 1.46 KB

Versions: 14

Compression:

Stored size: 1.46 KB

Contents

module HTTPX
  module Plugins

    interface _SigV4Credentials
      def username: () -> String
      def password: () -> String
      def security_token: () -> String?
    end

    module AWSSigV4

      Credentials: _SigV4Credentials


      class Signer

        def sign!: (Request) -> void

        private

        def initialize: (
          service: String,
          region: String,
          ?credentials: _SigV4Credentials,
          ?username: String,
          ?password: String,
          ?security_token: String,
          ?provider_prefix: String,
          ?header_provider_field: String,
          ?unsigned_headers: Array[String],
          ?apply_checksum_header: bool,
          ?algorithm: String
        ) -> untyped


        def sha256_hexdigest: (bodyIO value) -> String

        def hmac: (String key, String value) -> String
        def hexhmac: (String key, String value) -> String
      end


      interface _SigV4Options
        def sigv4_signer: () -> Signer?
        def sigv4_signer=: (Signer) -> Signer
      end

      def self.extra_options: (Options) -> (Options & _SigV4Options)
      def self.load_dependencies: (singleton(Session)) -> void

      module InstanceMethods
        def aws_sigv4_authentication: (**untyped) -> instance
      end

      module RequestMethods
        def canonical_path: () -> String

        def canonical_query: () -> String
      end
    end

    type awsSigV4Session = Session & Plugins::AWSSigV4::InstanceMethods
  end
end

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
httpx-0.15.4 sig/plugins/aws_sigv4.rbs
httpx-0.15.3 sig/plugins/aws_sigv4.rbs
httpx-0.15.2 sig/plugins/aws_sigv4.rbs
httpx-0.15.1 sig/plugins/aws_sigv4.rbs
httpx-0.15.0 sig/plugins/aws_sigv4.rbs
httpx-0.14.5 sig/plugins/aws_sigv4.rbs
httpx-0.14.4 sig/plugins/aws_sigv4.rbs
httpx-0.14.3 sig/plugins/aws_sigv4.rbs
httpx-0.14.2 sig/plugins/aws_sigv4.rbs
httpx-0.14.1 sig/plugins/aws_sigv4.rbs
httpx-0.14.0 sig/plugins/aws_sigv4.rbs
httpx-0.13.2 sig/plugins/aws_sigv4.rbs
httpx-0.13.1 sig/plugins/aws_sigv4.rbs
httpx-0.13.0 sig/plugins/aws_sigv4.rbs