import { ClientParametersProps } from './ClientParametersProps';
import { ConnectionHttpParametersProps } from './ConnectionHttpParametersProps';
import { Value } from '../../../cloudformation/Value';
/**
  Contains the OAuth authorization parameters to use for the connection.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-connection-oauthparameters.html">the AWS Docs</a>
*/
export interface OAuthParametersProps {
    /** <code>ClientParameters</code>  <a name="cfn-events-connection-oauthparameters-clientparameters"></a>
  A <code>CreateConnectionOAuthClientRequestParameters</code> object that contains the client parameters for OAuth authorization.<br />
  
  Required: Yes<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt">No interruption</a> */
    clientParameters: ClientParametersProps;
    /** <code>OAuthHttpParameters</code>  <a name="cfn-events-connection-oauthparameters-oauthhttpparameters"></a>
  A <code>ConnectionHttpParameters</code> object that contains details about the additional parameters to use for the connection.<br />
  
  Required: No<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt">No interruption</a> */
    oAuthHttpParameters?: ConnectionHttpParametersProps;
    /** <code>AuthorizationEndpoint</code>  <a name="cfn-events-connection-oauthparameters-authorizationendpoint"></a>
  The URL to the authorization endpoint when OAuth is specified as the authorization type.<br />
  
  Required: Yes<br />
  
  Minimum: <code>1</code><br />
  
  Maximum: <code>2048</code><br />
  
  Pattern: <code>^((%[0-9A-Fa-f]{2}|[-()_.!~*';/?:@\x26=+$,A-Za-z0-9])+)([).!';/?:,])?$</code><br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt">No interruption</a> */
    authorizationEndpoint: Value<string>;
    /** <code>HttpMethod</code>  <a name="cfn-events-connection-oauthparameters-httpmethod"></a>
  The method to use for the authorization request.<br />
  
  Required: Yes<br />
  
  Allowed values: <code>GET | POST | PUT</code><br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt">No interruption</a> */
    httpMethod: Value<'GET' | 'POST' | 'PUT'>;
}
