All Downloads are FREE. Search and download functionalities are using the official Maven repository.

csharp.IReadableConfiguration.mustache Maven / Gradle / Ivy

There is a newer version: 7.7.0
Show newest version
{{>partial_header}}

using System;
using System.Collections.Generic;
using System.Net;
using System.Net.Security;
using System.Security.Cryptography.X509Certificates;
{{#useRestSharp}}
{{#hasOAuthMethods}}using {{packageName}}.Client.Auth;
{{/hasOAuthMethods}}
{{/useRestSharp}}

namespace {{packageName}}.Client
{
    /// 
    /// Represents a readable-only configuration contract.
    /// 
    public interface IReadableConfiguration
    {
        /// 
        /// Gets the access token.
        /// 
        /// Access token.
        string AccessToken { get; }

        {{#useRestSharp}}
        {{#hasOAuthMethods}}
        /// 
        /// Gets the OAuth token URL.
        /// 
        /// OAuth Token URL.
        string OAuthTokenUrl { get; }

        /// 
        /// Gets the OAuth client ID.
        /// 
        /// OAuth Client ID.
        string OAuthClientId { get; }

        /// 
        /// Gets the OAuth client secret.
        /// 
        /// OAuth Client Secret.
        string OAuthClientSecret { get; }

        /// 
        /// Gets the OAuth flow.
        /// 
        /// OAuth Flow.
        OAuthFlow? OAuthFlow { get; }

        {{/hasOAuthMethods}}
        {{/useRestSharp}}
        /// 
        /// Gets the API key.
        /// 
        /// API key.
        IDictionary ApiKey { get; }

        /// 
        /// Gets the API key prefix.
        /// 
        /// API key prefix.
        IDictionary ApiKeyPrefix { get; }

        /// 
        /// Gets the base path.
        /// 
        /// Base path.
        string BasePath { get; }

        /// 
        /// Gets the date time format.
        /// 
        /// Date time format.
        string DateTimeFormat { get; }

        /// 
        /// Gets the default header.
        /// 
        /// Default header.
        [Obsolete("Use DefaultHeaders instead.")]
        IDictionary DefaultHeader { get; }

        /// 
        /// Gets the default headers.
        /// 
        /// Default headers.
        IDictionary DefaultHeaders { get; }

        /// 
        /// Gets the temp folder path.
        /// 
        /// Temp folder path.
        string TempFolderPath { get; }

        /// 
        /// Gets the HTTP connection timeout (in milliseconds)
        /// 
        /// HTTP connection timeout.
        int Timeout { get; }

        /// 
        /// Gets the proxy.
        /// 
        /// Proxy.
        WebProxy Proxy { get; }

        /// 
        /// Gets the user agent.
        /// 
        /// User agent.
        string UserAgent { get; }

        /// 
        /// Gets the username.
        /// 
        /// Username.
        string Username { get; }

        /// 
        /// Gets the password.
        /// 
        /// Password.
        string Password { get; }

        /// 
        /// Determine whether or not the "default credentials" (e.g. the user account under which the current process is running) will be sent along to the server. The default is false.
        /// 
        bool UseDefaultCredentials { get; }

        /// 
        /// Get the servers associated with the operation.
        /// 
        /// Operation servers.
        IReadOnlyDictionary>> OperationServers { get; }

        /// 
        /// Gets the API key with prefix.
        /// 
        /// API key identifier (authentication scheme).
        /// API key with prefix.
        string GetApiKeyWithPrefix(string apiKeyIdentifier);

        /// 
        /// Gets the Operation server url at the provided index.
        /// 
        /// Operation server name.
        /// Index of the operation server settings.
        /// 
        string GetOperationServerUrl(string operation, int index);

        /// 
        /// Gets certificate collection to be sent with requests.
        /// 
        /// X509 Certificate collection.
        X509CertificateCollection ClientCertificates { get; }
        {{#hasHttpSignatureMethods}}

        /// 
        /// Gets the HttpSigning configuration
        /// 
        HttpSigningConfiguration HttpSigningConfiguration { get; }
        {{/hasHttpSignatureMethods}}

        /// 
        /// Callback function for handling the validation of remote certificates. Useful for certificate pinning and
        /// overriding certificate errors in the scope of a request.
        /// 
        RemoteCertificateValidationCallback RemoteCertificateValidationCallback { get; }
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy