-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/


-- | Amazon CloudSearch SDK.
--   
--   The types from this library are intended to be used with
--   <a>amazonka</a>, which provides mechanisms for specifying AuthN/AuthZ
--   information, sending requests, and receiving responses.
--   
--   Lenses are used for constructing and manipulating types, due to the
--   depth of nesting of AWS types and transparency regarding
--   de/serialisation into more palatable Haskell values. The provided
--   lenses should be compatible with any of the major lens libraries such
--   as <a>lens</a> or <a>lens-family-core</a>.
--   
--   See <a>Network.AWS.CloudSearch</a> or <a>the AWS documentation</a> to
--   get started.
@package amazonka-cloudsearch
@version 1.6.0


module Network.AWS.CloudSearch.Types

-- | API version <tt>2013-01-01</tt> of the Amazon CloudSearch SDK
--   configuration.
cloudSearch :: Service

-- | An error occurred while processing the request.
_BaseException :: AsError a => Getting (First ServiceError) a ServiceError

-- | The request was rejected because it attempted an operation which is
--   not enabled.
_DisabledOperationException :: AsError a => Getting (First ServiceError) a ServiceError

-- | An internal error occurred while processing the request. If this
--   problem persists, report an issue from the <a>Service Health
--   Dashboard</a> .
_InternalException :: AsError a => Getting (First ServiceError) a ServiceError

-- | The request was rejected because it specified an invalid type
--   definition.
_InvalidTypeException :: AsError a => Getting (First ServiceError) a ServiceError

-- | The request was rejected because it attempted to reference a resource
--   that does not exist.
_ResourceNotFoundException :: AsError a => Getting (First ServiceError) a ServiceError

-- | The request was rejected because a resource limit has already been
--   met.
_LimitExceededException :: AsError a => Getting (First ServiceError) a ServiceError
data AlgorithmicStemming
ASFull :: AlgorithmicStemming
ASLight :: AlgorithmicStemming
ASMinimal :: AlgorithmicStemming
ASNone :: AlgorithmicStemming

-- | An <a>IETF RFC 4646</a> language code or <tt>mul</tt> for multiple
--   languages.
data AnalysisSchemeLanguage
AR :: AnalysisSchemeLanguage
BG :: AnalysisSchemeLanguage
CA :: AnalysisSchemeLanguage
CS :: AnalysisSchemeLanguage
DA :: AnalysisSchemeLanguage
DE :: AnalysisSchemeLanguage
EL :: AnalysisSchemeLanguage
EN :: AnalysisSchemeLanguage
ES :: AnalysisSchemeLanguage
EU :: AnalysisSchemeLanguage
FA :: AnalysisSchemeLanguage
FI :: AnalysisSchemeLanguage
FR :: AnalysisSchemeLanguage
GA :: AnalysisSchemeLanguage
GL :: AnalysisSchemeLanguage
HE :: AnalysisSchemeLanguage
HI :: AnalysisSchemeLanguage
HU :: AnalysisSchemeLanguage
HY :: AnalysisSchemeLanguage
IT :: AnalysisSchemeLanguage
Id :: AnalysisSchemeLanguage
JA :: AnalysisSchemeLanguage
KO :: AnalysisSchemeLanguage
LV :: AnalysisSchemeLanguage
Mul :: AnalysisSchemeLanguage
NL :: AnalysisSchemeLanguage
NO :: AnalysisSchemeLanguage
PT :: AnalysisSchemeLanguage
RO :: AnalysisSchemeLanguage
RU :: AnalysisSchemeLanguage
SV :: AnalysisSchemeLanguage
TH :: AnalysisSchemeLanguage
TR :: AnalysisSchemeLanguage
ZhHans :: AnalysisSchemeLanguage
ZhHant :: AnalysisSchemeLanguage

-- | The type of field. The valid options for a field depend on the field
--   type. For more information about the supported field types, see
--   <a>Configuring Index Fields</a> in the <i>Amazon CloudSearch Developer
--   Guide</i> .
data IndexFieldType
Date :: IndexFieldType
DateArray :: IndexFieldType
Double :: IndexFieldType
DoubleArray :: IndexFieldType
Int :: IndexFieldType
IntArray :: IndexFieldType
Latlon :: IndexFieldType
Literal :: IndexFieldType
LiteralArray :: IndexFieldType
Text :: IndexFieldType
TextArray :: IndexFieldType

-- | The state of processing a change to an option. One of:
--   
--   <ul>
--   <li>RequiresIndexDocuments: The option's latest value will not be
--   deployed until <tt>IndexDocuments</tt> has been called and indexing is
--   complete. * Processing: The option's latest value is in the process of
--   being activated. * Active: The option's latest value is fully
--   deployed. * FailedToValidate: The option value is not compatible with
--   the domain's data and cannot be used to index the data. You must
--   either modify the option value or update or remove the incompatible
--   documents.</li>
--   </ul>
data OptionState
Active :: OptionState
FailedToValidate :: OptionState
Processing :: OptionState
RequiresIndexDocuments :: OptionState

-- | The instance type (such as <tt>search.m1.small</tt> ) on which an
--   index partition is hosted.
data PartitionInstanceType
Search_M1_Large :: PartitionInstanceType
Search_M1_Small :: PartitionInstanceType
Search_M2_2XLarge :: PartitionInstanceType
Search_M2_XLarge :: PartitionInstanceType
Search_M3_2XLarge :: PartitionInstanceType
Search_M3_Large :: PartitionInstanceType
Search_M3_Medium :: PartitionInstanceType
Search_M3_XLarge :: PartitionInstanceType
data SuggesterFuzzyMatching
High :: SuggesterFuzzyMatching
Low :: SuggesterFuzzyMatching
None :: SuggesterFuzzyMatching

-- | The configured access rules for the domain's document and search
--   endpoints, and the current status of those rules.
--   
--   <i>See:</i> <a>accessPoliciesStatus</a> smart constructor.
data AccessPoliciesStatus

-- | Creates a value of <a>AccessPoliciesStatus</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>apsOptions</a> - Undocumented member.</li>
--   <li><a>apsStatus</a> - Undocumented member.</li>
--   </ul>
accessPoliciesStatus :: Text -> OptionStatus -> AccessPoliciesStatus

-- | Undocumented member.
apsOptions :: Lens' AccessPoliciesStatus Text

-- | Undocumented member.
apsStatus :: Lens' AccessPoliciesStatus OptionStatus

-- | Synonyms, stopwords, and stemming options for an analysis scheme.
--   Includes tokenization dictionary for Japanese.
--   
--   <i>See:</i> <a>analysisOptions</a> smart constructor.
data AnalysisOptions

-- | Creates a value of <a>AnalysisOptions</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>aoAlgorithmicStemming</a> - The level of algorithmic stemming
--   to perform: <tt>none</tt> , <tt>minimal</tt> , <tt>light</tt> , or
--   <tt>full</tt> . The available levels vary depending on the language.
--   For more information, see <a>Language Specific Text Processing
--   Settings</a> in the <i>Amazon CloudSearch Developer Guide</i></li>
--   <li><a>aoStopwords</a> - A JSON array of terms to ignore during
--   indexing and searching. For example, <tt>["a", "an", "the", "of"]</tt>
--   . The stopwords dictionary must explicitly list each word you want to
--   ignore. Wildcards and regular expressions are not supported.</li>
--   <li><a>aoJapaneseTokenizationDictionary</a> - A JSON array that
--   contains a collection of terms, tokens, readings and part of speech
--   for Japanese Tokenizaiton. The Japanese tokenization dictionary
--   enables you to override the default tokenization for selected terms.
--   This is only valid for Japanese language fields.</li>
--   <li><a>aoSynonyms</a> - A JSON object that defines synonym groups and
--   aliases. A synonym group is an array of arrays, where each sub-array
--   is a group of terms where each term in the group is considered a
--   synonym of every other term in the group. The aliases value is an
--   object that contains a collection of string:value pairs where the
--   string specifies a term and the array of values specifies each of the
--   aliases for that term. An alias is considered a synonym of the
--   specified term, but the term is not considered a synonym of the alias.
--   For more information about specifying synonyms, see <a>Synonyms</a> in
--   the <i>Amazon CloudSearch Developer Guide</i> .</li>
--   <li><a>aoStemmingDictionary</a> - A JSON object that contains a
--   collection of string:value pairs that each map a term to its stem. For
--   example, <tt>{"term1": "stem1", "term2": "stem2", "term3":
--   "stem3"}</tt> . The stemming dictionary is applied in addition to any
--   algorithmic stemming. This enables you to override the results of the
--   algorithmic stemming to correct specific cases of overstemming or
--   understemming. The maximum size of a stemming dictionary is 500
--   KB.</li>
--   </ul>
analysisOptions :: AnalysisOptions

-- | The level of algorithmic stemming to perform: <tt>none</tt> ,
--   <tt>minimal</tt> , <tt>light</tt> , or <tt>full</tt> . The available
--   levels vary depending on the language. For more information, see
--   <a>Language Specific Text Processing Settings</a> in the <i>Amazon
--   CloudSearch Developer Guide</i>
aoAlgorithmicStemming :: Lens' AnalysisOptions (Maybe AlgorithmicStemming)

-- | A JSON array of terms to ignore during indexing and searching. For
--   example, <tt>["a", "an", "the", "of"]</tt> . The stopwords dictionary
--   must explicitly list each word you want to ignore. Wildcards and
--   regular expressions are not supported.
aoStopwords :: Lens' AnalysisOptions (Maybe Text)

-- | A JSON array that contains a collection of terms, tokens, readings and
--   part of speech for Japanese Tokenizaiton. The Japanese tokenization
--   dictionary enables you to override the default tokenization for
--   selected terms. This is only valid for Japanese language fields.
aoJapaneseTokenizationDictionary :: Lens' AnalysisOptions (Maybe Text)

-- | A JSON object that defines synonym groups and aliases. A synonym group
--   is an array of arrays, where each sub-array is a group of terms where
--   each term in the group is considered a synonym of every other term in
--   the group. The aliases value is an object that contains a collection
--   of string:value pairs where the string specifies a term and the array
--   of values specifies each of the aliases for that term. An alias is
--   considered a synonym of the specified term, but the term is not
--   considered a synonym of the alias. For more information about
--   specifying synonyms, see <a>Synonyms</a> in the <i>Amazon CloudSearch
--   Developer Guide</i> .
aoSynonyms :: Lens' AnalysisOptions (Maybe Text)

-- | A JSON object that contains a collection of string:value pairs that
--   each map a term to its stem. For example, <tt>{"term1": "stem1",
--   "term2": "stem2", "term3": "stem3"}</tt> . The stemming dictionary is
--   applied in addition to any algorithmic stemming. This enables you to
--   override the results of the algorithmic stemming to correct specific
--   cases of overstemming or understemming. The maximum size of a stemming
--   dictionary is 500 KB.
aoStemmingDictionary :: Lens' AnalysisOptions (Maybe Text)

-- | Configuration information for an analysis scheme. Each analysis scheme
--   has a unique name and specifies the language of the text to be
--   processed. The following options can be configured for an analysis
--   scheme: <tt>Synonyms</tt> , <tt>Stopwords</tt> ,
--   <tt>StemmingDictionary</tt> , <tt>JapaneseTokenizationDictionary</tt>
--   and <tt>AlgorithmicStemming</tt> .
--   
--   <i>See:</i> <a>analysisScheme</a> smart constructor.
data AnalysisScheme

-- | Creates a value of <a>AnalysisScheme</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>asAnalysisOptions</a> - Undocumented member.</li>
--   <li><a>asAnalysisSchemeName</a> - Undocumented member.</li>
--   <li><a>asAnalysisSchemeLanguage</a> - Undocumented member.</li>
--   </ul>
analysisScheme :: Text -> AnalysisSchemeLanguage -> AnalysisScheme

-- | Undocumented member.
asAnalysisOptions :: Lens' AnalysisScheme (Maybe AnalysisOptions)

-- | Undocumented member.
asAnalysisSchemeName :: Lens' AnalysisScheme Text

-- | Undocumented member.
asAnalysisSchemeLanguage :: Lens' AnalysisScheme AnalysisSchemeLanguage

-- | The status and configuration of an <tt>AnalysisScheme</tt> .
--   
--   <i>See:</i> <a>analysisSchemeStatus</a> smart constructor.
data AnalysisSchemeStatus

-- | Creates a value of <a>AnalysisSchemeStatus</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>assOptions</a> - Undocumented member.</li>
--   <li><a>assStatus</a> - Undocumented member.</li>
--   </ul>
analysisSchemeStatus :: AnalysisScheme -> OptionStatus -> AnalysisSchemeStatus

-- | Undocumented member.
assOptions :: Lens' AnalysisSchemeStatus AnalysisScheme

-- | Undocumented member.
assStatus :: Lens' AnalysisSchemeStatus OptionStatus

-- | The status and configuration of the domain's availability options.
--   
--   <i>See:</i> <a>availabilityOptionsStatus</a> smart constructor.
data AvailabilityOptionsStatus

-- | Creates a value of <a>AvailabilityOptionsStatus</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>aosOptions</a> - The availability options configured for the
--   domain.</li>
--   <li><a>aosStatus</a> - Undocumented member.</li>
--   </ul>
availabilityOptionsStatus :: Bool -> OptionStatus -> AvailabilityOptionsStatus

-- | The availability options configured for the domain.
aosOptions :: Lens' AvailabilityOptionsStatus Bool

-- | Undocumented member.
aosStatus :: Lens' AvailabilityOptionsStatus OptionStatus

-- | Options for a field that contains an array of dates. Present if
--   <tt>IndexFieldType</tt> specifies the field is of type
--   <tt>date-array</tt> . All options are enabled by default.
--   
--   <i>See:</i> <a>dateArrayOptions</a> smart constructor.
data DateArrayOptions

-- | Creates a value of <a>DateArrayOptions</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>daosSourceFields</a> - A list of source fields to map to the
--   field.</li>
--   <li><a>daosReturnEnabled</a> - Whether the contents of the field can
--   be returned in the search results.</li>
--   <li><a>daosFacetEnabled</a> - Whether facet information can be
--   returned for the field.</li>
--   <li><a>daosSearchEnabled</a> - Whether the contents of the field are
--   searchable.</li>
--   <li><a>daosDefaultValue</a> - A value to use for the field if the
--   field isn't specified for a document.</li>
--   </ul>
dateArrayOptions :: DateArrayOptions

-- | A list of source fields to map to the field.
daosSourceFields :: Lens' DateArrayOptions (Maybe Text)

-- | Whether the contents of the field can be returned in the search
--   results.
daosReturnEnabled :: Lens' DateArrayOptions (Maybe Bool)

-- | Whether facet information can be returned for the field.
daosFacetEnabled :: Lens' DateArrayOptions (Maybe Bool)

-- | Whether the contents of the field are searchable.
daosSearchEnabled :: Lens' DateArrayOptions (Maybe Bool)

-- | A value to use for the field if the field isn't specified for a
--   document.
daosDefaultValue :: Lens' DateArrayOptions (Maybe Text)

-- | Options for a date field. Dates and times are specified in UTC
--   (Coordinated Universal Time) according to IETF RFC3339:
--   yyyy-mm-ddT00:00:00Z. Present if <tt>IndexFieldType</tt> specifies the
--   field is of type <tt>date</tt> . All options are enabled by default.
--   
--   <i>See:</i> <a>dateOptions</a> smart constructor.
data DateOptions

-- | Creates a value of <a>DateOptions</a> with the minimum fields required
--   to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>doSourceField</a> - Undocumented member.</li>
--   <li><a>doReturnEnabled</a> - Whether the contents of the field can be
--   returned in the search results.</li>
--   <li><a>doFacetEnabled</a> - Whether facet information can be returned
--   for the field.</li>
--   <li><a>doSearchEnabled</a> - Whether the contents of the field are
--   searchable.</li>
--   <li><a>doSortEnabled</a> - Whether the field can be used to sort the
--   search results.</li>
--   <li><a>doDefaultValue</a> - A value to use for the field if the field
--   isn't specified for a document.</li>
--   </ul>
dateOptions :: DateOptions

-- | Undocumented member.
doSourceField :: Lens' DateOptions (Maybe Text)

-- | Whether the contents of the field can be returned in the search
--   results.
doReturnEnabled :: Lens' DateOptions (Maybe Bool)

-- | Whether facet information can be returned for the field.
doFacetEnabled :: Lens' DateOptions (Maybe Bool)

-- | Whether the contents of the field are searchable.
doSearchEnabled :: Lens' DateOptions (Maybe Bool)

-- | Whether the field can be used to sort the search results.
doSortEnabled :: Lens' DateOptions (Maybe Bool)

-- | A value to use for the field if the field isn't specified for a
--   document.
doDefaultValue :: Lens' DateOptions (Maybe Text)

-- | Options for a search suggester.
--   
--   <i>See:</i> <a>documentSuggesterOptions</a> smart constructor.
data DocumentSuggesterOptions

-- | Creates a value of <a>DocumentSuggesterOptions</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>dsoSortExpression</a> - An expression that computes a score for
--   each suggestion to control how they are sorted. The scores are rounded
--   to the nearest integer, with a floor of 0 and a ceiling of 2^31-1. A
--   document's relevance score is not computed for suggestions, so sort
--   expressions cannot reference the <tt>_score</tt> value. To sort
--   suggestions using a numeric field or existing expression, simply
--   specify the name of the field or expression. If no expression is
--   configured for the suggester, the suggestions are sorted with the
--   closest matches listed first.</li>
--   <li><a>dsoFuzzyMatching</a> - The level of fuzziness allowed when
--   suggesting matches for a string: <tt>none</tt> , <tt>low</tt> , or
--   <tt>high</tt> . With none, the specified string is treated as an exact
--   prefix. With low, suggestions must differ from the specified string by
--   no more than one character. With high, suggestions can differ by up to
--   two characters. The default is none.</li>
--   <li><a>dsoSourceField</a> - The name of the index field you want to
--   use for suggestions.</li>
--   </ul>
documentSuggesterOptions :: Text -> DocumentSuggesterOptions

-- | An expression that computes a score for each suggestion to control how
--   they are sorted. The scores are rounded to the nearest integer, with a
--   floor of 0 and a ceiling of 2^31-1. A document's relevance score is
--   not computed for suggestions, so sort expressions cannot reference the
--   <tt>_score</tt> value. To sort suggestions using a numeric field or
--   existing expression, simply specify the name of the field or
--   expression. If no expression is configured for the suggester, the
--   suggestions are sorted with the closest matches listed first.
dsoSortExpression :: Lens' DocumentSuggesterOptions (Maybe Text)

-- | The level of fuzziness allowed when suggesting matches for a string:
--   <tt>none</tt> , <tt>low</tt> , or <tt>high</tt> . With none, the
--   specified string is treated as an exact prefix. With low, suggestions
--   must differ from the specified string by no more than one character.
--   With high, suggestions can differ by up to two characters. The default
--   is none.
dsoFuzzyMatching :: Lens' DocumentSuggesterOptions (Maybe SuggesterFuzzyMatching)

-- | The name of the index field you want to use for suggestions.
dsoSourceField :: Lens' DocumentSuggesterOptions Text

-- | The current status of the search domain.
--   
--   <i>See:</i> <a>domainStatus</a> smart constructor.
data DomainStatus

-- | Creates a value of <a>DomainStatus</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>dsSearchInstanceCount</a> - The number of search instances that
--   are available to process search requests.</li>
--   <li><a>dsSearchInstanceType</a> - The instance type that is being used
--   to process search requests.</li>
--   <li><a>dsDocService</a> - The service endpoint for updating documents
--   in a search domain.</li>
--   <li><a>dsARN</a> - Undocumented member.</li>
--   <li><a>dsCreated</a> - True if the search domain is created. It can
--   take several minutes to initialize a domain when <tt>CreateDomain</tt>
--   is called. Newly created search domains are returned from
--   <tt>DescribeDomains</tt> with a false value for Created until domain
--   creation is complete.</li>
--   <li><a>dsSearchService</a> - The service endpoint for requesting
--   search results from a search domain.</li>
--   <li><a>dsLimits</a> - Undocumented member.</li>
--   <li><a>dsSearchPartitionCount</a> - The number of partitions across
--   which the search index is spread.</li>
--   <li><a>dsDeleted</a> - True if the search domain has been deleted. The
--   system must clean up resources dedicated to the search domain when
--   <tt>DeleteDomain</tt> is called. Newly deleted search domains are
--   returned from <tt>DescribeDomains</tt> with a true value for IsDeleted
--   for several minutes until resource cleanup is complete.</li>
--   <li><a>dsProcessing</a> - True if processing is being done to activate
--   the current domain configuration.</li>
--   <li><a>dsDomainId</a> - Undocumented member.</li>
--   <li><a>dsDomainName</a> - Undocumented member.</li>
--   <li><a>dsRequiresIndexDocuments</a> - True if <tt>IndexDocuments</tt>
--   needs to be called to activate the current domain configuration.</li>
--   </ul>
domainStatus :: Text -> Text -> Bool -> DomainStatus

-- | The number of search instances that are available to process search
--   requests.
dsSearchInstanceCount :: Lens' DomainStatus (Maybe Natural)

-- | The instance type that is being used to process search requests.
dsSearchInstanceType :: Lens' DomainStatus (Maybe Text)

-- | The service endpoint for updating documents in a search domain.
dsDocService :: Lens' DomainStatus (Maybe ServiceEndpoint)

-- | Undocumented member.
dsARN :: Lens' DomainStatus (Maybe Text)

-- | True if the search domain is created. It can take several minutes to
--   initialize a domain when <tt>CreateDomain</tt> is called. Newly
--   created search domains are returned from <tt>DescribeDomains</tt> with
--   a false value for Created until domain creation is complete.
dsCreated :: Lens' DomainStatus (Maybe Bool)

-- | The service endpoint for requesting search results from a search
--   domain.
dsSearchService :: Lens' DomainStatus (Maybe ServiceEndpoint)

-- | Undocumented member.
dsLimits :: Lens' DomainStatus (Maybe Limits)

-- | The number of partitions across which the search index is spread.
dsSearchPartitionCount :: Lens' DomainStatus (Maybe Natural)

-- | True if the search domain has been deleted. The system must clean up
--   resources dedicated to the search domain when <tt>DeleteDomain</tt> is
--   called. Newly deleted search domains are returned from
--   <tt>DescribeDomains</tt> with a true value for IsDeleted for several
--   minutes until resource cleanup is complete.
dsDeleted :: Lens' DomainStatus (Maybe Bool)

-- | True if processing is being done to activate the current domain
--   configuration.
dsProcessing :: Lens' DomainStatus (Maybe Bool)

-- | Undocumented member.
dsDomainId :: Lens' DomainStatus Text

-- | Undocumented member.
dsDomainName :: Lens' DomainStatus Text

-- | True if <tt>IndexDocuments</tt> needs to be called to activate the
--   current domain configuration.
dsRequiresIndexDocuments :: Lens' DomainStatus Bool

-- | Options for a field that contains an array of double-precision 64-bit
--   floating point values. Present if <tt>IndexFieldType</tt> specifies
--   the field is of type <tt>double-array</tt> . All options are enabled
--   by default.
--   
--   <i>See:</i> <a>doubleArrayOptions</a> smart constructor.
data DoubleArrayOptions

-- | Creates a value of <a>DoubleArrayOptions</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>daoSourceFields</a> - A list of source fields to map to the
--   field.</li>
--   <li><a>daoReturnEnabled</a> - Whether the contents of the field can be
--   returned in the search results.</li>
--   <li><a>daoFacetEnabled</a> - Whether facet information can be returned
--   for the field.</li>
--   <li><a>daoSearchEnabled</a> - Whether the contents of the field are
--   searchable.</li>
--   <li><a>daoDefaultValue</a> - A value to use for the field if the field
--   isn't specified for a document.</li>
--   </ul>
doubleArrayOptions :: DoubleArrayOptions

-- | A list of source fields to map to the field.
daoSourceFields :: Lens' DoubleArrayOptions (Maybe Text)

-- | Whether the contents of the field can be returned in the search
--   results.
daoReturnEnabled :: Lens' DoubleArrayOptions (Maybe Bool)

-- | Whether facet information can be returned for the field.
daoFacetEnabled :: Lens' DoubleArrayOptions (Maybe Bool)

-- | Whether the contents of the field are searchable.
daoSearchEnabled :: Lens' DoubleArrayOptions (Maybe Bool)

-- | A value to use for the field if the field isn't specified for a
--   document.
daoDefaultValue :: Lens' DoubleArrayOptions (Maybe Double)

-- | Options for a double-precision 64-bit floating point field. Present if
--   <tt>IndexFieldType</tt> specifies the field is of type <tt>double</tt>
--   . All options are enabled by default.
--   
--   <i>See:</i> <a>doubleOptions</a> smart constructor.
data DoubleOptions

-- | Creates a value of <a>DoubleOptions</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>dSourceField</a> - The name of the source field to map to the
--   field.</li>
--   <li><a>dReturnEnabled</a> - Whether the contents of the field can be
--   returned in the search results.</li>
--   <li><a>dFacetEnabled</a> - Whether facet information can be returned
--   for the field.</li>
--   <li><a>dSearchEnabled</a> - Whether the contents of the field are
--   searchable.</li>
--   <li><a>dSortEnabled</a> - Whether the field can be used to sort the
--   search results.</li>
--   <li><a>dDefaultValue</a> - A value to use for the field if the field
--   isn't specified for a document. This can be important if you are using
--   the field in an expression and that field is not present in every
--   document.</li>
--   </ul>
doubleOptions :: DoubleOptions

-- | The name of the source field to map to the field.
dSourceField :: Lens' DoubleOptions (Maybe Text)

-- | Whether the contents of the field can be returned in the search
--   results.
dReturnEnabled :: Lens' DoubleOptions (Maybe Bool)

-- | Whether facet information can be returned for the field.
dFacetEnabled :: Lens' DoubleOptions (Maybe Bool)

-- | Whether the contents of the field are searchable.
dSearchEnabled :: Lens' DoubleOptions (Maybe Bool)

-- | Whether the field can be used to sort the search results.
dSortEnabled :: Lens' DoubleOptions (Maybe Bool)

-- | A value to use for the field if the field isn't specified for a
--   document. This can be important if you are using the field in an
--   expression and that field is not present in every document.
dDefaultValue :: Lens' DoubleOptions (Maybe Double)

-- | A named expression that can be evaluated at search time. Can be used
--   to sort the search results, define other expressions, or return
--   computed information in the search results.
--   
--   <i>See:</i> <a>expression</a> smart constructor.
data Expression

-- | Creates a value of <a>Expression</a> with the minimum fields required
--   to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>eExpressionName</a> - Undocumented member.</li>
--   <li><a>eExpressionValue</a> - Undocumented member.</li>
--   </ul>
expression :: Text -> Text -> Expression

-- | Undocumented member.
eExpressionName :: Lens' Expression Text

-- | Undocumented member.
eExpressionValue :: Lens' Expression Text

-- | The value of an <tt>Expression</tt> and its current status.
--   
--   <i>See:</i> <a>expressionStatus</a> smart constructor.
data ExpressionStatus

-- | Creates a value of <a>ExpressionStatus</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>esOptions</a> - The expression that is evaluated for sorting
--   while processing a search request.</li>
--   <li><a>esStatus</a> - Undocumented member.</li>
--   </ul>
expressionStatus :: Expression -> OptionStatus -> ExpressionStatus

-- | The expression that is evaluated for sorting while processing a search
--   request.
esOptions :: Lens' ExpressionStatus Expression

-- | Undocumented member.
esStatus :: Lens' ExpressionStatus OptionStatus

-- | Configuration information for a field in the index, including its
--   name, type, and options. The supported options depend on the
--   <tt><a>IndexFieldType</a> </tt> .
--   
--   <i>See:</i> <a>indexField</a> smart constructor.
data IndexField

-- | Creates a value of <a>IndexField</a> with the minimum fields required
--   to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>ifDoubleArrayOptions</a> - Undocumented member.</li>
--   <li><a>ifDateOptions</a> - Undocumented member.</li>
--   <li><a>ifTextArrayOptions</a> - Undocumented member.</li>
--   <li><a>ifDoubleOptions</a> - Undocumented member.</li>
--   <li><a>ifTextOptions</a> - Undocumented member.</li>
--   <li><a>ifLatLonOptions</a> - Undocumented member.</li>
--   <li><a>ifLiteralArrayOptions</a> - Undocumented member.</li>
--   <li><a>ifIntArrayOptions</a> - Undocumented member.</li>
--   <li><a>ifDateArrayOptions</a> - Undocumented member.</li>
--   <li><a>ifIntOptions</a> - Undocumented member.</li>
--   <li><a>ifLiteralOptions</a> - Undocumented member.</li>
--   <li><a>ifIndexFieldName</a> - A string that represents the name of an
--   index field. CloudSearch supports regular index fields as well as
--   dynamic fields. A dynamic field's name defines a pattern that begins
--   or ends with a wildcard. Any document fields that don't map to a
--   regular index field but do match a dynamic field's pattern are
--   configured with the dynamic field's indexing options. Regular field
--   names begin with a letter and can contain the following characters:
--   a-z (lowercase), 0-9, and _ (underscore). Dynamic field names must
--   begin or end with a wildcard (*). The wildcard can also be the only
--   character in a dynamic field name. Multiple wildcards, and wildcards
--   embedded within a string are not supported. The name <tt>score</tt> is
--   reserved and cannot be used as a field name. To reference a document's
--   ID, you can use the name <tt>_id</tt> .</li>
--   <li><a>ifIndexFieldType</a> - Undocumented member.</li>
--   </ul>
indexField :: Text -> IndexFieldType -> IndexField

-- | Undocumented member.
ifDoubleArrayOptions :: Lens' IndexField (Maybe DoubleArrayOptions)

-- | Undocumented member.
ifDateOptions :: Lens' IndexField (Maybe DateOptions)

-- | Undocumented member.
ifTextArrayOptions :: Lens' IndexField (Maybe TextArrayOptions)

-- | Undocumented member.
ifDoubleOptions :: Lens' IndexField (Maybe DoubleOptions)

-- | Undocumented member.
ifTextOptions :: Lens' IndexField (Maybe TextOptions)

-- | Undocumented member.
ifLatLonOptions :: Lens' IndexField (Maybe LatLonOptions)

-- | Undocumented member.
ifLiteralArrayOptions :: Lens' IndexField (Maybe LiteralArrayOptions)

-- | Undocumented member.
ifIntArrayOptions :: Lens' IndexField (Maybe IntArrayOptions)

-- | Undocumented member.
ifDateArrayOptions :: Lens' IndexField (Maybe DateArrayOptions)

-- | Undocumented member.
ifIntOptions :: Lens' IndexField (Maybe IntOptions)

-- | Undocumented member.
ifLiteralOptions :: Lens' IndexField (Maybe LiteralOptions)

-- | A string that represents the name of an index field. CloudSearch
--   supports regular index fields as well as dynamic fields. A dynamic
--   field's name defines a pattern that begins or ends with a wildcard.
--   Any document fields that don't map to a regular index field but do
--   match a dynamic field's pattern are configured with the dynamic
--   field's indexing options. Regular field names begin with a letter and
--   can contain the following characters: a-z (lowercase), 0-9, and _
--   (underscore). Dynamic field names must begin or end with a wildcard
--   (*). The wildcard can also be the only character in a dynamic field
--   name. Multiple wildcards, and wildcards embedded within a string are
--   not supported. The name <tt>score</tt> is reserved and cannot be used
--   as a field name. To reference a document's ID, you can use the name
--   <tt>_id</tt> .
ifIndexFieldName :: Lens' IndexField Text

-- | Undocumented member.
ifIndexFieldType :: Lens' IndexField IndexFieldType

-- | The value of an <tt>IndexField</tt> and its current status.
--   
--   <i>See:</i> <a>indexFieldStatus</a> smart constructor.
data IndexFieldStatus

-- | Creates a value of <a>IndexFieldStatus</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>ifsOptions</a> - Undocumented member.</li>
--   <li><a>ifsStatus</a> - Undocumented member.</li>
--   </ul>
indexFieldStatus :: IndexField -> OptionStatus -> IndexFieldStatus

-- | Undocumented member.
ifsOptions :: Lens' IndexFieldStatus IndexField

-- | Undocumented member.
ifsStatus :: Lens' IndexFieldStatus OptionStatus

-- | Options for a field that contains an array of 64-bit signed integers.
--   Present if <tt>IndexFieldType</tt> specifies the field is of type
--   <tt>int-array</tt> . All options are enabled by default.
--   
--   <i>See:</i> <a>intArrayOptions</a> smart constructor.
data IntArrayOptions

-- | Creates a value of <a>IntArrayOptions</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>iaoSourceFields</a> - A list of source fields to map to the
--   field.</li>
--   <li><a>iaoReturnEnabled</a> - Whether the contents of the field can be
--   returned in the search results.</li>
--   <li><a>iaoFacetEnabled</a> - Whether facet information can be returned
--   for the field.</li>
--   <li><a>iaoSearchEnabled</a> - Whether the contents of the field are
--   searchable.</li>
--   <li><a>iaoDefaultValue</a> - A value to use for the field if the field
--   isn't specified for a document.</li>
--   </ul>
intArrayOptions :: IntArrayOptions

-- | A list of source fields to map to the field.
iaoSourceFields :: Lens' IntArrayOptions (Maybe Text)

-- | Whether the contents of the field can be returned in the search
--   results.
iaoReturnEnabled :: Lens' IntArrayOptions (Maybe Bool)

-- | Whether facet information can be returned for the field.
iaoFacetEnabled :: Lens' IntArrayOptions (Maybe Bool)

-- | Whether the contents of the field are searchable.
iaoSearchEnabled :: Lens' IntArrayOptions (Maybe Bool)

-- | A value to use for the field if the field isn't specified for a
--   document.
iaoDefaultValue :: Lens' IntArrayOptions (Maybe Integer)

-- | Options for a 64-bit signed integer field. Present if
--   <tt>IndexFieldType</tt> specifies the field is of type <tt>int</tt> .
--   All options are enabled by default.
--   
--   <i>See:</i> <a>intOptions</a> smart constructor.
data IntOptions

-- | Creates a value of <a>IntOptions</a> with the minimum fields required
--   to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>ioSourceField</a> - The name of the source field to map to the
--   field.</li>
--   <li><a>ioReturnEnabled</a> - Whether the contents of the field can be
--   returned in the search results.</li>
--   <li><a>ioFacetEnabled</a> - Whether facet information can be returned
--   for the field.</li>
--   <li><a>ioSearchEnabled</a> - Whether the contents of the field are
--   searchable.</li>
--   <li><a>ioSortEnabled</a> - Whether the field can be used to sort the
--   search results.</li>
--   <li><a>ioDefaultValue</a> - A value to use for the field if the field
--   isn't specified for a document. This can be important if you are using
--   the field in an expression and that field is not present in every
--   document.</li>
--   </ul>
intOptions :: IntOptions

-- | The name of the source field to map to the field.
ioSourceField :: Lens' IntOptions (Maybe Text)

-- | Whether the contents of the field can be returned in the search
--   results.
ioReturnEnabled :: Lens' IntOptions (Maybe Bool)

-- | Whether facet information can be returned for the field.
ioFacetEnabled :: Lens' IntOptions (Maybe Bool)

-- | Whether the contents of the field are searchable.
ioSearchEnabled :: Lens' IntOptions (Maybe Bool)

-- | Whether the field can be used to sort the search results.
ioSortEnabled :: Lens' IntOptions (Maybe Bool)

-- | A value to use for the field if the field isn't specified for a
--   document. This can be important if you are using the field in an
--   expression and that field is not present in every document.
ioDefaultValue :: Lens' IntOptions (Maybe Integer)

-- | Options for a latlon field. A latlon field contains a location stored
--   as a latitude and longitude value pair. Present if
--   <tt>IndexFieldType</tt> specifies the field is of type <tt>latlon</tt>
--   . All options are enabled by default.
--   
--   <i>See:</i> <a>latLonOptions</a> smart constructor.
data LatLonOptions

-- | Creates a value of <a>LatLonOptions</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>lloSourceField</a> - Undocumented member.</li>
--   <li><a>lloReturnEnabled</a> - Whether the contents of the field can be
--   returned in the search results.</li>
--   <li><a>lloFacetEnabled</a> - Whether facet information can be returned
--   for the field.</li>
--   <li><a>lloSearchEnabled</a> - Whether the contents of the field are
--   searchable.</li>
--   <li><a>lloSortEnabled</a> - Whether the field can be used to sort the
--   search results.</li>
--   <li><a>lloDefaultValue</a> - A value to use for the field if the field
--   isn't specified for a document.</li>
--   </ul>
latLonOptions :: LatLonOptions

-- | Undocumented member.
lloSourceField :: Lens' LatLonOptions (Maybe Text)

-- | Whether the contents of the field can be returned in the search
--   results.
lloReturnEnabled :: Lens' LatLonOptions (Maybe Bool)

-- | Whether facet information can be returned for the field.
lloFacetEnabled :: Lens' LatLonOptions (Maybe Bool)

-- | Whether the contents of the field are searchable.
lloSearchEnabled :: Lens' LatLonOptions (Maybe Bool)

-- | Whether the field can be used to sort the search results.
lloSortEnabled :: Lens' LatLonOptions (Maybe Bool)

-- | A value to use for the field if the field isn't specified for a
--   document.
lloDefaultValue :: Lens' LatLonOptions (Maybe Text)

-- | <i>See:</i> <a>limits</a> smart constructor.
data Limits

-- | Creates a value of <a>Limits</a> with the minimum fields required to
--   make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>lMaximumReplicationCount</a> - Undocumented member.</li>
--   <li><a>lMaximumPartitionCount</a> - Undocumented member.</li>
--   </ul>
limits :: Natural -> Natural -> Limits

-- | Undocumented member.
lMaximumReplicationCount :: Lens' Limits Natural

-- | Undocumented member.
lMaximumPartitionCount :: Lens' Limits Natural

-- | Options for a field that contains an array of literal strings. Present
--   if <tt>IndexFieldType</tt> specifies the field is of type
--   <tt>literal-array</tt> . All options are enabled by default.
--   
--   <i>See:</i> <a>literalArrayOptions</a> smart constructor.
data LiteralArrayOptions

-- | Creates a value of <a>LiteralArrayOptions</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>laoSourceFields</a> - A list of source fields to map to the
--   field.</li>
--   <li><a>laoReturnEnabled</a> - Whether the contents of the field can be
--   returned in the search results.</li>
--   <li><a>laoFacetEnabled</a> - Whether facet information can be returned
--   for the field.</li>
--   <li><a>laoSearchEnabled</a> - Whether the contents of the field are
--   searchable.</li>
--   <li><a>laoDefaultValue</a> - A value to use for the field if the field
--   isn't specified for a document.</li>
--   </ul>
literalArrayOptions :: LiteralArrayOptions

-- | A list of source fields to map to the field.
laoSourceFields :: Lens' LiteralArrayOptions (Maybe Text)

-- | Whether the contents of the field can be returned in the search
--   results.
laoReturnEnabled :: Lens' LiteralArrayOptions (Maybe Bool)

-- | Whether facet information can be returned for the field.
laoFacetEnabled :: Lens' LiteralArrayOptions (Maybe Bool)

-- | Whether the contents of the field are searchable.
laoSearchEnabled :: Lens' LiteralArrayOptions (Maybe Bool)

-- | A value to use for the field if the field isn't specified for a
--   document.
laoDefaultValue :: Lens' LiteralArrayOptions (Maybe Text)

-- | Options for literal field. Present if <tt>IndexFieldType</tt>
--   specifies the field is of type <tt>literal</tt> . All options are
--   enabled by default.
--   
--   <i>See:</i> <a>literalOptions</a> smart constructor.
data LiteralOptions

-- | Creates a value of <a>LiteralOptions</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>loSourceField</a> - Undocumented member.</li>
--   <li><a>loReturnEnabled</a> - Whether the contents of the field can be
--   returned in the search results.</li>
--   <li><a>loFacetEnabled</a> - Whether facet information can be returned
--   for the field.</li>
--   <li><a>loSearchEnabled</a> - Whether the contents of the field are
--   searchable.</li>
--   <li><a>loSortEnabled</a> - Whether the field can be used to sort the
--   search results.</li>
--   <li><a>loDefaultValue</a> - A value to use for the field if the field
--   isn't specified for a document.</li>
--   </ul>
literalOptions :: LiteralOptions

-- | Undocumented member.
loSourceField :: Lens' LiteralOptions (Maybe Text)

-- | Whether the contents of the field can be returned in the search
--   results.
loReturnEnabled :: Lens' LiteralOptions (Maybe Bool)

-- | Whether facet information can be returned for the field.
loFacetEnabled :: Lens' LiteralOptions (Maybe Bool)

-- | Whether the contents of the field are searchable.
loSearchEnabled :: Lens' LiteralOptions (Maybe Bool)

-- | Whether the field can be used to sort the search results.
loSortEnabled :: Lens' LiteralOptions (Maybe Bool)

-- | A value to use for the field if the field isn't specified for a
--   document.
loDefaultValue :: Lens' LiteralOptions (Maybe Text)

-- | The status of domain configuration option.
--   
--   <i>See:</i> <a>optionStatus</a> smart constructor.
data OptionStatus

-- | Creates a value of <a>OptionStatus</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>osPendingDeletion</a> - Indicates that the option will be
--   deleted once processing is complete.</li>
--   <li><a>osUpdateVersion</a> - A unique integer that indicates when this
--   option was last updated.</li>
--   <li><a>osCreationDate</a> - A timestamp for when this option was
--   created.</li>
--   <li><a>osUpdateDate</a> - A timestamp for when this option was last
--   updated.</li>
--   <li><a>osState</a> - The state of processing a change to an option.
--   Possible values: * <tt>RequiresIndexDocuments</tt> : the option's
--   latest value will not be deployed until <tt>IndexDocuments</tt> has
--   been called and indexing is complete. * <tt>Processing</tt> : the
--   option's latest value is in the process of being activated. *
--   <tt>Active</tt> : the option's latest value is completely deployed. *
--   <tt>FailedToValidate</tt> : the option value is not compatible with
--   the domain's data and cannot be used to index the data. You must
--   either modify the option value or update or remove the incompatible
--   documents.</li>
--   </ul>
optionStatus :: UTCTime -> UTCTime -> OptionState -> OptionStatus

-- | Indicates that the option will be deleted once processing is complete.
osPendingDeletion :: Lens' OptionStatus (Maybe Bool)

-- | A unique integer that indicates when this option was last updated.
osUpdateVersion :: Lens' OptionStatus (Maybe Natural)

-- | A timestamp for when this option was created.
osCreationDate :: Lens' OptionStatus UTCTime

-- | A timestamp for when this option was last updated.
osUpdateDate :: Lens' OptionStatus UTCTime

-- | The state of processing a change to an option. Possible values: *
--   <tt>RequiresIndexDocuments</tt> : the option's latest value will not
--   be deployed until <tt>IndexDocuments</tt> has been called and indexing
--   is complete. * <tt>Processing</tt> : the option's latest value is in
--   the process of being activated. * <tt>Active</tt> : the option's
--   latest value is completely deployed. * <tt>FailedToValidate</tt> : the
--   option value is not compatible with the domain's data and cannot be
--   used to index the data. You must either modify the option value or
--   update or remove the incompatible documents.
osState :: Lens' OptionStatus OptionState

-- | The desired instance type and desired number of replicas of each index
--   partition.
--   
--   <i>See:</i> <a>scalingParameters</a> smart constructor.
data ScalingParameters

-- | Creates a value of <a>ScalingParameters</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>spDesiredInstanceType</a> - The instance type that you want to
--   preconfigure for your domain. For example, <tt>search.m1.small</tt>
--   .</li>
--   <li><a>spDesiredReplicationCount</a> - The number of replicas you want
--   to preconfigure for each index partition.</li>
--   <li><a>spDesiredPartitionCount</a> - The number of partitions you want
--   to preconfigure for your domain. Only valid when you select
--   <tt>m2.2xlarge</tt> as the desired instance type.</li>
--   </ul>
scalingParameters :: ScalingParameters

-- | The instance type that you want to preconfigure for your domain. For
--   example, <tt>search.m1.small</tt> .
spDesiredInstanceType :: Lens' ScalingParameters (Maybe PartitionInstanceType)

-- | The number of replicas you want to preconfigure for each index
--   partition.
spDesiredReplicationCount :: Lens' ScalingParameters (Maybe Natural)

-- | The number of partitions you want to preconfigure for your domain.
--   Only valid when you select <tt>m2.2xlarge</tt> as the desired instance
--   type.
spDesiredPartitionCount :: Lens' ScalingParameters (Maybe Natural)

-- | The status and configuration of a search domain's scaling parameters.
--   
--   <i>See:</i> <a>scalingParametersStatus</a> smart constructor.
data ScalingParametersStatus

-- | Creates a value of <a>ScalingParametersStatus</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>spsOptions</a> - Undocumented member.</li>
--   <li><a>spsStatus</a> - Undocumented member.</li>
--   </ul>
scalingParametersStatus :: ScalingParameters -> OptionStatus -> ScalingParametersStatus

-- | Undocumented member.
spsOptions :: Lens' ScalingParametersStatus ScalingParameters

-- | Undocumented member.
spsStatus :: Lens' ScalingParametersStatus OptionStatus

-- | The endpoint to which service requests can be submitted.
--   
--   <i>See:</i> <a>serviceEndpoint</a> smart constructor.
data ServiceEndpoint

-- | Creates a value of <a>ServiceEndpoint</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>seEndpoint</a> - Undocumented member.</li>
--   </ul>
serviceEndpoint :: ServiceEndpoint

-- | Undocumented member.
seEndpoint :: Lens' ServiceEndpoint (Maybe Text)

-- | Configuration information for a search suggester. Each suggester has a
--   unique name and specifies the text field you want to use for
--   suggestions. The following options can be configured for a suggester:
--   <tt>FuzzyMatching</tt> , <tt>SortExpression</tt> .
--   
--   <i>See:</i> <a>suggester</a> smart constructor.
data Suggester

-- | Creates a value of <a>Suggester</a> with the minimum fields required
--   to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>sSuggesterName</a> - Undocumented member.</li>
--   <li><a>sDocumentSuggesterOptions</a> - Undocumented member.</li>
--   </ul>
suggester :: Text -> DocumentSuggesterOptions -> Suggester

-- | Undocumented member.
sSuggesterName :: Lens' Suggester Text

-- | Undocumented member.
sDocumentSuggesterOptions :: Lens' Suggester DocumentSuggesterOptions

-- | The value of a <tt>Suggester</tt> and its current status.
--   
--   <i>See:</i> <a>suggesterStatus</a> smart constructor.
data SuggesterStatus

-- | Creates a value of <a>SuggesterStatus</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>ssOptions</a> - Undocumented member.</li>
--   <li><a>ssStatus</a> - Undocumented member.</li>
--   </ul>
suggesterStatus :: Suggester -> OptionStatus -> SuggesterStatus

-- | Undocumented member.
ssOptions :: Lens' SuggesterStatus Suggester

-- | Undocumented member.
ssStatus :: Lens' SuggesterStatus OptionStatus

-- | Options for a field that contains an array of text strings. Present if
--   <tt>IndexFieldType</tt> specifies the field is of type
--   <tt>text-array</tt> . A <tt>text-array</tt> field is always
--   searchable. All options are enabled by default.
--   
--   <i>See:</i> <a>textArrayOptions</a> smart constructor.
data TextArrayOptions

-- | Creates a value of <a>TextArrayOptions</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>taoSourceFields</a> - A list of source fields to map to the
--   field.</li>
--   <li><a>taoReturnEnabled</a> - Whether the contents of the field can be
--   returned in the search results.</li>
--   <li><a>taoAnalysisScheme</a> - The name of an analysis scheme for a
--   <tt>text-array</tt> field.</li>
--   <li><a>taoHighlightEnabled</a> - Whether highlights can be returned
--   for the field.</li>
--   <li><a>taoDefaultValue</a> - A value to use for the field if the field
--   isn't specified for a document.</li>
--   </ul>
textArrayOptions :: TextArrayOptions

-- | A list of source fields to map to the field.
taoSourceFields :: Lens' TextArrayOptions (Maybe Text)

-- | Whether the contents of the field can be returned in the search
--   results.
taoReturnEnabled :: Lens' TextArrayOptions (Maybe Bool)

-- | The name of an analysis scheme for a <tt>text-array</tt> field.
taoAnalysisScheme :: Lens' TextArrayOptions (Maybe Text)

-- | Whether highlights can be returned for the field.
taoHighlightEnabled :: Lens' TextArrayOptions (Maybe Bool)

-- | A value to use for the field if the field isn't specified for a
--   document.
taoDefaultValue :: Lens' TextArrayOptions (Maybe Text)

-- | Options for text field. Present if <tt>IndexFieldType</tt> specifies
--   the field is of type <tt>text</tt> . A <tt>text</tt> field is always
--   searchable. All options are enabled by default.
--   
--   <i>See:</i> <a>textOptions</a> smart constructor.
data TextOptions

-- | Creates a value of <a>TextOptions</a> with the minimum fields required
--   to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>toSourceField</a> - Undocumented member.</li>
--   <li><a>toReturnEnabled</a> - Whether the contents of the field can be
--   returned in the search results.</li>
--   <li><a>toAnalysisScheme</a> - The name of an analysis scheme for a
--   <tt>text</tt> field.</li>
--   <li><a>toHighlightEnabled</a> - Whether highlights can be returned for
--   the field.</li>
--   <li><a>toSortEnabled</a> - Whether the field can be used to sort the
--   search results.</li>
--   <li><a>toDefaultValue</a> - A value to use for the field if the field
--   isn't specified for a document.</li>
--   </ul>
textOptions :: TextOptions

-- | Undocumented member.
toSourceField :: Lens' TextOptions (Maybe Text)

-- | Whether the contents of the field can be returned in the search
--   results.
toReturnEnabled :: Lens' TextOptions (Maybe Bool)

-- | The name of an analysis scheme for a <tt>text</tt> field.
toAnalysisScheme :: Lens' TextOptions (Maybe Text)

-- | Whether highlights can be returned for the field.
toHighlightEnabled :: Lens' TextOptions (Maybe Bool)

-- | Whether the field can be used to sort the search results.
toSortEnabled :: Lens' TextOptions (Maybe Bool)

-- | A value to use for the field if the field isn't specified for a
--   document.
toDefaultValue :: Lens' TextOptions (Maybe Text)


-- | Lists all search domains owned by an account.
module Network.AWS.CloudSearch.ListDomainNames

-- | Creates a value of <a>ListDomainNames</a> with the minimum fields
--   required to make a request.
listDomainNames :: ListDomainNames

-- | <i>See:</i> <a>listDomainNames</a> smart constructor.
data ListDomainNames

-- | Creates a value of <a>ListDomainNamesResponse</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>ldnrsDomainNames</a> - The names of the search domains owned by
--   an account.</li>
--   <li><a>ldnrsResponseStatus</a> - -- | The response status code.</li>
--   </ul>
listDomainNamesResponse :: Int -> ListDomainNamesResponse

-- | The result of a <tt>ListDomainNames</tt> request. Contains a list of
--   the domains owned by an account.
--   
--   <i>See:</i> <a>listDomainNamesResponse</a> smart constructor.
data ListDomainNamesResponse

-- | The names of the search domains owned by an account.
ldnrsDomainNames :: Lens' ListDomainNamesResponse (HashMap Text Text)

-- | <ul>
--   <li>- | The response status code.</li>
--   </ul>
ldnrsResponseStatus :: Lens' ListDomainNamesResponse Int
instance GHC.Generics.Generic Network.AWS.CloudSearch.ListDomainNames.ListDomainNamesResponse
instance Data.Data.Data Network.AWS.CloudSearch.ListDomainNames.ListDomainNamesResponse
instance GHC.Show.Show Network.AWS.CloudSearch.ListDomainNames.ListDomainNamesResponse
instance GHC.Read.Read Network.AWS.CloudSearch.ListDomainNames.ListDomainNamesResponse
instance GHC.Classes.Eq Network.AWS.CloudSearch.ListDomainNames.ListDomainNamesResponse
instance GHC.Generics.Generic Network.AWS.CloudSearch.ListDomainNames.ListDomainNames
instance Data.Data.Data Network.AWS.CloudSearch.ListDomainNames.ListDomainNames
instance GHC.Show.Show Network.AWS.CloudSearch.ListDomainNames.ListDomainNames
instance GHC.Read.Read Network.AWS.CloudSearch.ListDomainNames.ListDomainNames
instance GHC.Classes.Eq Network.AWS.CloudSearch.ListDomainNames.ListDomainNames
instance Network.AWS.Types.AWSRequest Network.AWS.CloudSearch.ListDomainNames.ListDomainNames
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.ListDomainNames.ListDomainNamesResponse
instance Data.Hashable.Class.Hashable Network.AWS.CloudSearch.ListDomainNames.ListDomainNames
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.ListDomainNames.ListDomainNames
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudSearch.ListDomainNames.ListDomainNames
instance Network.AWS.Data.Path.ToPath Network.AWS.CloudSearch.ListDomainNames.ListDomainNames
instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudSearch.ListDomainNames.ListDomainNames


-- | Tells the search domain to start indexing its documents using the
--   latest indexing options. This operation must be invoked to activate
--   options whose <a>OptionStatus</a> is <tt>RequiresIndexDocuments</tt> .
module Network.AWS.CloudSearch.IndexDocuments

-- | Creates a value of <a>IndexDocuments</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>idDomainName</a> - Undocumented member.</li>
--   </ul>
indexDocuments :: Text -> IndexDocuments

-- | Container for the parameters to the <tt><a>IndexDocuments</a> </tt>
--   operation. Specifies the name of the domain you want to re-index.
--   
--   <i>See:</i> <a>indexDocuments</a> smart constructor.
data IndexDocuments

-- | Undocumented member.
idDomainName :: Lens' IndexDocuments Text

-- | Creates a value of <a>IndexDocumentsResponse</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>idrsFieldNames</a> - The names of the fields that are currently
--   being indexed.</li>
--   <li><a>idrsResponseStatus</a> - -- | The response status code.</li>
--   </ul>
indexDocumentsResponse :: Int -> IndexDocumentsResponse

-- | The result of an <tt>IndexDocuments</tt> request. Contains the status
--   of the indexing operation, including the fields being indexed.
--   
--   <i>See:</i> <a>indexDocumentsResponse</a> smart constructor.
data IndexDocumentsResponse

-- | The names of the fields that are currently being indexed.
idrsFieldNames :: Lens' IndexDocumentsResponse [Text]

-- | <ul>
--   <li>- | The response status code.</li>
--   </ul>
idrsResponseStatus :: Lens' IndexDocumentsResponse Int
instance GHC.Generics.Generic Network.AWS.CloudSearch.IndexDocuments.IndexDocumentsResponse
instance Data.Data.Data Network.AWS.CloudSearch.IndexDocuments.IndexDocumentsResponse
instance GHC.Show.Show Network.AWS.CloudSearch.IndexDocuments.IndexDocumentsResponse
instance GHC.Read.Read Network.AWS.CloudSearch.IndexDocuments.IndexDocumentsResponse
instance GHC.Classes.Eq Network.AWS.CloudSearch.IndexDocuments.IndexDocumentsResponse
instance GHC.Generics.Generic Network.AWS.CloudSearch.IndexDocuments.IndexDocuments
instance Data.Data.Data Network.AWS.CloudSearch.IndexDocuments.IndexDocuments
instance GHC.Show.Show Network.AWS.CloudSearch.IndexDocuments.IndexDocuments
instance GHC.Read.Read Network.AWS.CloudSearch.IndexDocuments.IndexDocuments
instance GHC.Classes.Eq Network.AWS.CloudSearch.IndexDocuments.IndexDocuments
instance Network.AWS.Types.AWSRequest Network.AWS.CloudSearch.IndexDocuments.IndexDocuments
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.IndexDocuments.IndexDocumentsResponse
instance Data.Hashable.Class.Hashable Network.AWS.CloudSearch.IndexDocuments.IndexDocuments
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.IndexDocuments.IndexDocuments
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudSearch.IndexDocuments.IndexDocuments
instance Network.AWS.Data.Path.ToPath Network.AWS.CloudSearch.IndexDocuments.IndexDocuments
instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudSearch.IndexDocuments.IndexDocuments


-- | Gets the suggesters configured for a domain. A suggester enables you
--   to display possible matches before users finish typing their queries.
--   Can be limited to specific suggesters by name. By default, shows all
--   suggesters and includes any pending changes to the configuration. Set
--   the <tt>Deployed</tt> option to <tt>true</tt> to show the active
--   configuration and exclude pending changes. For more information, see
--   <a>Getting Search Suggestions</a> in the <i>Amazon CloudSearch
--   Developer Guide</i> .
module Network.AWS.CloudSearch.DescribeSuggesters

-- | Creates a value of <a>DescribeSuggesters</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>dssDeployed</a> - Whether to display the deployed configuration
--   (<tt>true</tt> ) or include any pending changes (<tt>false</tt> ).
--   Defaults to <tt>false</tt> .</li>
--   <li><a>dssSuggesterNames</a> - The suggesters you want to
--   describe.</li>
--   <li><a>dssDomainName</a> - The name of the domain you want to
--   describe.</li>
--   </ul>
describeSuggesters :: Text -> DescribeSuggesters

-- | Container for the parameters to the <tt><tt>DescribeSuggester</tt>
--   </tt> operation. Specifies the name of the domain you want to
--   describe. To restrict the response to particular suggesters, specify
--   the names of the suggesters you want to describe. To show the active
--   configuration and exclude any pending changes, set the
--   <tt>Deployed</tt> option to <tt>true</tt> .
--   
--   <i>See:</i> <a>describeSuggesters</a> smart constructor.
data DescribeSuggesters

-- | Whether to display the deployed configuration (<tt>true</tt> ) or
--   include any pending changes (<tt>false</tt> ). Defaults to
--   <tt>false</tt> .
dssDeployed :: Lens' DescribeSuggesters (Maybe Bool)

-- | The suggesters you want to describe.
dssSuggesterNames :: Lens' DescribeSuggesters [Text]

-- | The name of the domain you want to describe.
dssDomainName :: Lens' DescribeSuggesters Text

-- | Creates a value of <a>DescribeSuggestersResponse</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>dssrsResponseStatus</a> - -- | The response status code.</li>
--   <li><a>dssrsSuggesters</a> - The suggesters configured for the domain
--   specified in the request.</li>
--   </ul>
describeSuggestersResponse :: Int -> DescribeSuggestersResponse

-- | The result of a <tt>DescribeSuggesters</tt> request.
--   
--   <i>See:</i> <a>describeSuggestersResponse</a> smart constructor.
data DescribeSuggestersResponse

-- | <ul>
--   <li>- | The response status code.</li>
--   </ul>
dssrsResponseStatus :: Lens' DescribeSuggestersResponse Int

-- | The suggesters configured for the domain specified in the request.
dssrsSuggesters :: Lens' DescribeSuggestersResponse [SuggesterStatus]
instance GHC.Generics.Generic Network.AWS.CloudSearch.DescribeSuggesters.DescribeSuggestersResponse
instance Data.Data.Data Network.AWS.CloudSearch.DescribeSuggesters.DescribeSuggestersResponse
instance GHC.Show.Show Network.AWS.CloudSearch.DescribeSuggesters.DescribeSuggestersResponse
instance GHC.Read.Read Network.AWS.CloudSearch.DescribeSuggesters.DescribeSuggestersResponse
instance GHC.Classes.Eq Network.AWS.CloudSearch.DescribeSuggesters.DescribeSuggestersResponse
instance GHC.Generics.Generic Network.AWS.CloudSearch.DescribeSuggesters.DescribeSuggesters
instance Data.Data.Data Network.AWS.CloudSearch.DescribeSuggesters.DescribeSuggesters
instance GHC.Show.Show Network.AWS.CloudSearch.DescribeSuggesters.DescribeSuggesters
instance GHC.Read.Read Network.AWS.CloudSearch.DescribeSuggesters.DescribeSuggesters
instance GHC.Classes.Eq Network.AWS.CloudSearch.DescribeSuggesters.DescribeSuggesters
instance Network.AWS.Types.AWSRequest Network.AWS.CloudSearch.DescribeSuggesters.DescribeSuggesters
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DescribeSuggesters.DescribeSuggestersResponse
instance Data.Hashable.Class.Hashable Network.AWS.CloudSearch.DescribeSuggesters.DescribeSuggesters
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DescribeSuggesters.DescribeSuggesters
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudSearch.DescribeSuggesters.DescribeSuggesters
instance Network.AWS.Data.Path.ToPath Network.AWS.CloudSearch.DescribeSuggesters.DescribeSuggesters
instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudSearch.DescribeSuggesters.DescribeSuggesters


-- | Gets information about the access policies that control access to the
--   domain's document and search endpoints. By default, shows the
--   configuration with any pending changes. Set the <tt>Deployed</tt>
--   option to <tt>true</tt> to show the active configuration and exclude
--   pending changes. For more information, see <a>Configuring Access for a
--   Search Domain</a> in the <i>Amazon CloudSearch Developer Guide</i> .
module Network.AWS.CloudSearch.DescribeServiceAccessPolicies

-- | Creates a value of <a>DescribeServiceAccessPolicies</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>dsapDeployed</a> - Whether to display the deployed
--   configuration (<tt>true</tt> ) or include any pending changes
--   (<tt>false</tt> ). Defaults to <tt>false</tt> .</li>
--   <li><a>dsapDomainName</a> - The name of the domain you want to
--   describe.</li>
--   </ul>
describeServiceAccessPolicies :: Text -> DescribeServiceAccessPolicies

-- | Container for the parameters to the
--   <tt><a>DescribeServiceAccessPolicies</a> </tt> operation. Specifies
--   the name of the domain you want to describe. To show the active
--   configuration and exclude any pending changes, set the
--   <tt>Deployed</tt> option to <tt>true</tt> .
--   
--   <i>See:</i> <a>describeServiceAccessPolicies</a> smart constructor.
data DescribeServiceAccessPolicies

-- | Whether to display the deployed configuration (<tt>true</tt> ) or
--   include any pending changes (<tt>false</tt> ). Defaults to
--   <tt>false</tt> .
dsapDeployed :: Lens' DescribeServiceAccessPolicies (Maybe Bool)

-- | The name of the domain you want to describe.
dsapDomainName :: Lens' DescribeServiceAccessPolicies Text

-- | Creates a value of <a>DescribeServiceAccessPoliciesResponse</a> with
--   the minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>dsaprsResponseStatus</a> - -- | The response status code.</li>
--   <li><a>dsaprsAccessPolicies</a> - The access rules configured for the
--   domain specified in the request.</li>
--   </ul>
describeServiceAccessPoliciesResponse :: Int -> AccessPoliciesStatus -> DescribeServiceAccessPoliciesResponse

-- | The result of a <tt>DescribeServiceAccessPolicies</tt> request.
--   
--   <i>See:</i> <a>describeServiceAccessPoliciesResponse</a> smart
--   constructor.
data DescribeServiceAccessPoliciesResponse

-- | <ul>
--   <li>- | The response status code.</li>
--   </ul>
dsaprsResponseStatus :: Lens' DescribeServiceAccessPoliciesResponse Int

-- | The access rules configured for the domain specified in the request.
dsaprsAccessPolicies :: Lens' DescribeServiceAccessPoliciesResponse AccessPoliciesStatus
instance GHC.Generics.Generic Network.AWS.CloudSearch.DescribeServiceAccessPolicies.DescribeServiceAccessPoliciesResponse
instance Data.Data.Data Network.AWS.CloudSearch.DescribeServiceAccessPolicies.DescribeServiceAccessPoliciesResponse
instance GHC.Show.Show Network.AWS.CloudSearch.DescribeServiceAccessPolicies.DescribeServiceAccessPoliciesResponse
instance GHC.Read.Read Network.AWS.CloudSearch.DescribeServiceAccessPolicies.DescribeServiceAccessPoliciesResponse
instance GHC.Classes.Eq Network.AWS.CloudSearch.DescribeServiceAccessPolicies.DescribeServiceAccessPoliciesResponse
instance GHC.Generics.Generic Network.AWS.CloudSearch.DescribeServiceAccessPolicies.DescribeServiceAccessPolicies
instance Data.Data.Data Network.AWS.CloudSearch.DescribeServiceAccessPolicies.DescribeServiceAccessPolicies
instance GHC.Show.Show Network.AWS.CloudSearch.DescribeServiceAccessPolicies.DescribeServiceAccessPolicies
instance GHC.Read.Read Network.AWS.CloudSearch.DescribeServiceAccessPolicies.DescribeServiceAccessPolicies
instance GHC.Classes.Eq Network.AWS.CloudSearch.DescribeServiceAccessPolicies.DescribeServiceAccessPolicies
instance Network.AWS.Types.AWSRequest Network.AWS.CloudSearch.DescribeServiceAccessPolicies.DescribeServiceAccessPolicies
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DescribeServiceAccessPolicies.DescribeServiceAccessPoliciesResponse
instance Data.Hashable.Class.Hashable Network.AWS.CloudSearch.DescribeServiceAccessPolicies.DescribeServiceAccessPolicies
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DescribeServiceAccessPolicies.DescribeServiceAccessPolicies
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudSearch.DescribeServiceAccessPolicies.DescribeServiceAccessPolicies
instance Network.AWS.Data.Path.ToPath Network.AWS.CloudSearch.DescribeServiceAccessPolicies.DescribeServiceAccessPolicies
instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudSearch.DescribeServiceAccessPolicies.DescribeServiceAccessPolicies


-- | Gets the scaling parameters configured for a domain. A domain's
--   scaling parameters specify the desired search instance type and
--   replication count. For more information, see <a>Configuring Scaling
--   Options</a> in the <i>Amazon CloudSearch Developer Guide</i> .
module Network.AWS.CloudSearch.DescribeScalingParameters

-- | Creates a value of <a>DescribeScalingParameters</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>dspDomainName</a> - Undocumented member.</li>
--   </ul>
describeScalingParameters :: Text -> DescribeScalingParameters

-- | Container for the parameters to the
--   <tt><a>DescribeScalingParameters</a> </tt> operation. Specifies the
--   name of the domain you want to describe.
--   
--   <i>See:</i> <a>describeScalingParameters</a> smart constructor.
data DescribeScalingParameters

-- | Undocumented member.
dspDomainName :: Lens' DescribeScalingParameters Text

-- | Creates a value of <a>DescribeScalingParametersResponse</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>dsprsResponseStatus</a> - -- | The response status code.</li>
--   <li><a>dsprsScalingParameters</a> - Undocumented member.</li>
--   </ul>
describeScalingParametersResponse :: Int -> ScalingParametersStatus -> DescribeScalingParametersResponse

-- | The result of a <tt>DescribeScalingParameters</tt> request. Contains
--   the scaling parameters configured for the domain specified in the
--   request.
--   
--   <i>See:</i> <a>describeScalingParametersResponse</a> smart
--   constructor.
data DescribeScalingParametersResponse

-- | <ul>
--   <li>- | The response status code.</li>
--   </ul>
dsprsResponseStatus :: Lens' DescribeScalingParametersResponse Int

-- | Undocumented member.
dsprsScalingParameters :: Lens' DescribeScalingParametersResponse ScalingParametersStatus
instance GHC.Generics.Generic Network.AWS.CloudSearch.DescribeScalingParameters.DescribeScalingParametersResponse
instance Data.Data.Data Network.AWS.CloudSearch.DescribeScalingParameters.DescribeScalingParametersResponse
instance GHC.Show.Show Network.AWS.CloudSearch.DescribeScalingParameters.DescribeScalingParametersResponse
instance GHC.Read.Read Network.AWS.CloudSearch.DescribeScalingParameters.DescribeScalingParametersResponse
instance GHC.Classes.Eq Network.AWS.CloudSearch.DescribeScalingParameters.DescribeScalingParametersResponse
instance GHC.Generics.Generic Network.AWS.CloudSearch.DescribeScalingParameters.DescribeScalingParameters
instance Data.Data.Data Network.AWS.CloudSearch.DescribeScalingParameters.DescribeScalingParameters
instance GHC.Show.Show Network.AWS.CloudSearch.DescribeScalingParameters.DescribeScalingParameters
instance GHC.Read.Read Network.AWS.CloudSearch.DescribeScalingParameters.DescribeScalingParameters
instance GHC.Classes.Eq Network.AWS.CloudSearch.DescribeScalingParameters.DescribeScalingParameters
instance Network.AWS.Types.AWSRequest Network.AWS.CloudSearch.DescribeScalingParameters.DescribeScalingParameters
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DescribeScalingParameters.DescribeScalingParametersResponse
instance Data.Hashable.Class.Hashable Network.AWS.CloudSearch.DescribeScalingParameters.DescribeScalingParameters
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DescribeScalingParameters.DescribeScalingParameters
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudSearch.DescribeScalingParameters.DescribeScalingParameters
instance Network.AWS.Data.Path.ToPath Network.AWS.CloudSearch.DescribeScalingParameters.DescribeScalingParameters
instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudSearch.DescribeScalingParameters.DescribeScalingParameters


-- | Gets information about the index fields configured for the search
--   domain. Can be limited to specific fields by name. By default, shows
--   all fields and includes any pending changes to the configuration. Set
--   the <tt>Deployed</tt> option to <tt>true</tt> to show the active
--   configuration and exclude pending changes. For more information, see
--   <a>Getting Domain Information</a> in the <i>Amazon CloudSearch
--   Developer Guide</i> .
module Network.AWS.CloudSearch.DescribeIndexFields

-- | Creates a value of <a>DescribeIndexFields</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>difDeployed</a> - Whether to display the deployed configuration
--   (<tt>true</tt> ) or include any pending changes (<tt>false</tt> ).
--   Defaults to <tt>false</tt> .</li>
--   <li><a>difFieldNames</a> - A list of the index fields you want to
--   describe. If not specified, information is returned for all configured
--   index fields.</li>
--   <li><a>difDomainName</a> - The name of the domain you want to
--   describe.</li>
--   </ul>
describeIndexFields :: Text -> DescribeIndexFields

-- | Container for the parameters to the <tt><a>DescribeIndexFields</a>
--   </tt> operation. Specifies the name of the domain you want to
--   describe. To restrict the response to particular index fields, specify
--   the names of the index fields you want to describe. To show the active
--   configuration and exclude any pending changes, set the
--   <tt>Deployed</tt> option to <tt>true</tt> .
--   
--   <i>See:</i> <a>describeIndexFields</a> smart constructor.
data DescribeIndexFields

-- | Whether to display the deployed configuration (<tt>true</tt> ) or
--   include any pending changes (<tt>false</tt> ). Defaults to
--   <tt>false</tt> .
difDeployed :: Lens' DescribeIndexFields (Maybe Bool)

-- | A list of the index fields you want to describe. If not specified,
--   information is returned for all configured index fields.
difFieldNames :: Lens' DescribeIndexFields [Text]

-- | The name of the domain you want to describe.
difDomainName :: Lens' DescribeIndexFields Text

-- | Creates a value of <a>DescribeIndexFieldsResponse</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>difsrsResponseStatus</a> - -- | The response status code.</li>
--   <li><a>difsrsIndexFields</a> - The index fields configured for the
--   domain.</li>
--   </ul>
describeIndexFieldsResponse :: Int -> DescribeIndexFieldsResponse

-- | The result of a <tt>DescribeIndexFields</tt> request. Contains the
--   index fields configured for the domain specified in the request.
--   
--   <i>See:</i> <a>describeIndexFieldsResponse</a> smart constructor.
data DescribeIndexFieldsResponse

-- | <ul>
--   <li>- | The response status code.</li>
--   </ul>
difsrsResponseStatus :: Lens' DescribeIndexFieldsResponse Int

-- | The index fields configured for the domain.
difsrsIndexFields :: Lens' DescribeIndexFieldsResponse [IndexFieldStatus]
instance GHC.Generics.Generic Network.AWS.CloudSearch.DescribeIndexFields.DescribeIndexFieldsResponse
instance Data.Data.Data Network.AWS.CloudSearch.DescribeIndexFields.DescribeIndexFieldsResponse
instance GHC.Show.Show Network.AWS.CloudSearch.DescribeIndexFields.DescribeIndexFieldsResponse
instance GHC.Read.Read Network.AWS.CloudSearch.DescribeIndexFields.DescribeIndexFieldsResponse
instance GHC.Classes.Eq Network.AWS.CloudSearch.DescribeIndexFields.DescribeIndexFieldsResponse
instance GHC.Generics.Generic Network.AWS.CloudSearch.DescribeIndexFields.DescribeIndexFields
instance Data.Data.Data Network.AWS.CloudSearch.DescribeIndexFields.DescribeIndexFields
instance GHC.Show.Show Network.AWS.CloudSearch.DescribeIndexFields.DescribeIndexFields
instance GHC.Read.Read Network.AWS.CloudSearch.DescribeIndexFields.DescribeIndexFields
instance GHC.Classes.Eq Network.AWS.CloudSearch.DescribeIndexFields.DescribeIndexFields
instance Network.AWS.Types.AWSRequest Network.AWS.CloudSearch.DescribeIndexFields.DescribeIndexFields
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DescribeIndexFields.DescribeIndexFieldsResponse
instance Data.Hashable.Class.Hashable Network.AWS.CloudSearch.DescribeIndexFields.DescribeIndexFields
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DescribeIndexFields.DescribeIndexFields
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudSearch.DescribeIndexFields.DescribeIndexFields
instance Network.AWS.Data.Path.ToPath Network.AWS.CloudSearch.DescribeIndexFields.DescribeIndexFields
instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudSearch.DescribeIndexFields.DescribeIndexFields


-- | Gets the expressions configured for the search domain. Can be limited
--   to specific expressions by name. By default, shows all expressions and
--   includes any pending changes to the configuration. Set the
--   <tt>Deployed</tt> option to <tt>true</tt> to show the active
--   configuration and exclude pending changes. For more information, see
--   <a>Configuring Expressions</a> in the <i>Amazon CloudSearch Developer
--   Guide</i> .
module Network.AWS.CloudSearch.DescribeExpressions

-- | Creates a value of <a>DescribeExpressions</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>deDeployed</a> - Whether to display the deployed configuration
--   (<tt>true</tt> ) or include any pending changes (<tt>false</tt> ).
--   Defaults to <tt>false</tt> .</li>
--   <li><a>deExpressionNames</a> - Limits the
--   <tt><a>DescribeExpressions</a> </tt> response to the specified
--   expressions. If not specified, all expressions are shown.</li>
--   <li><a>deDomainName</a> - The name of the domain you want to
--   describe.</li>
--   </ul>
describeExpressions :: Text -> DescribeExpressions

-- | Container for the parameters to the <tt><tt>DescribeDomains</tt> </tt>
--   operation. Specifies the name of the domain you want to describe. To
--   restrict the response to particular expressions, specify the names of
--   the expressions you want to describe. To show the active configuration
--   and exclude any pending changes, set the <tt>Deployed</tt> option to
--   <tt>true</tt> .
--   
--   <i>See:</i> <a>describeExpressions</a> smart constructor.
data DescribeExpressions

-- | Whether to display the deployed configuration (<tt>true</tt> ) or
--   include any pending changes (<tt>false</tt> ). Defaults to
--   <tt>false</tt> .
deDeployed :: Lens' DescribeExpressions (Maybe Bool)

-- | Limits the <tt><a>DescribeExpressions</a> </tt> response to the
--   specified expressions. If not specified, all expressions are shown.
deExpressionNames :: Lens' DescribeExpressions [Text]

-- | The name of the domain you want to describe.
deDomainName :: Lens' DescribeExpressions Text

-- | Creates a value of <a>DescribeExpressionsResponse</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>drsResponseStatus</a> - -- | The response status code.</li>
--   <li><a>drsExpressions</a> - The expressions configured for the
--   domain.</li>
--   </ul>
describeExpressionsResponse :: Int -> DescribeExpressionsResponse

-- | The result of a <tt>DescribeExpressions</tt> request. Contains the
--   expressions configured for the domain specified in the request.
--   
--   <i>See:</i> <a>describeExpressionsResponse</a> smart constructor.
data DescribeExpressionsResponse

-- | <ul>
--   <li>- | The response status code.</li>
--   </ul>
drsResponseStatus :: Lens' DescribeExpressionsResponse Int

-- | The expressions configured for the domain.
drsExpressions :: Lens' DescribeExpressionsResponse [ExpressionStatus]
instance GHC.Generics.Generic Network.AWS.CloudSearch.DescribeExpressions.DescribeExpressionsResponse
instance Data.Data.Data Network.AWS.CloudSearch.DescribeExpressions.DescribeExpressionsResponse
instance GHC.Show.Show Network.AWS.CloudSearch.DescribeExpressions.DescribeExpressionsResponse
instance GHC.Read.Read Network.AWS.CloudSearch.DescribeExpressions.DescribeExpressionsResponse
instance GHC.Classes.Eq Network.AWS.CloudSearch.DescribeExpressions.DescribeExpressionsResponse
instance GHC.Generics.Generic Network.AWS.CloudSearch.DescribeExpressions.DescribeExpressions
instance Data.Data.Data Network.AWS.CloudSearch.DescribeExpressions.DescribeExpressions
instance GHC.Show.Show Network.AWS.CloudSearch.DescribeExpressions.DescribeExpressions
instance GHC.Read.Read Network.AWS.CloudSearch.DescribeExpressions.DescribeExpressions
instance GHC.Classes.Eq Network.AWS.CloudSearch.DescribeExpressions.DescribeExpressions
instance Network.AWS.Types.AWSRequest Network.AWS.CloudSearch.DescribeExpressions.DescribeExpressions
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DescribeExpressions.DescribeExpressionsResponse
instance Data.Hashable.Class.Hashable Network.AWS.CloudSearch.DescribeExpressions.DescribeExpressions
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DescribeExpressions.DescribeExpressions
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudSearch.DescribeExpressions.DescribeExpressions
instance Network.AWS.Data.Path.ToPath Network.AWS.CloudSearch.DescribeExpressions.DescribeExpressions
instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudSearch.DescribeExpressions.DescribeExpressions


-- | Gets information about the search domains owned by this account. Can
--   be limited to specific domains. Shows all domains by default. To get
--   the number of searchable documents in a domain, use the console or
--   submit a <tt>matchall</tt> request to your domain's search endpoint:
--   <tt>q=matchall&amp;amp;q.parser=structured&amp;amp;size=0</tt> . For
--   more information, see <a>Getting Information about a Search Domain</a>
--   in the <i>Amazon CloudSearch Developer Guide</i> .
module Network.AWS.CloudSearch.DescribeDomains

-- | Creates a value of <a>DescribeDomains</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>ddDomainNames</a> - The names of the domains you want to
--   include in the response.</li>
--   </ul>
describeDomains :: DescribeDomains

-- | Container for the parameters to the <tt><a>DescribeDomains</a> </tt>
--   operation. By default shows the status of all domains. To restrict the
--   response to particular domains, specify the names of the domains you
--   want to describe.
--   
--   <i>See:</i> <a>describeDomains</a> smart constructor.
data DescribeDomains

-- | The names of the domains you want to include in the response.
ddDomainNames :: Lens' DescribeDomains [Text]

-- | Creates a value of <a>DescribeDomainsResponse</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>ddsrsResponseStatus</a> - -- | The response status code.</li>
--   <li><a>ddsrsDomainStatusList</a> - Undocumented member.</li>
--   </ul>
describeDomainsResponse :: Int -> DescribeDomainsResponse

-- | The result of a <tt>DescribeDomains</tt> request. Contains the status
--   of the domains specified in the request or all domains owned by the
--   account.
--   
--   <i>See:</i> <a>describeDomainsResponse</a> smart constructor.
data DescribeDomainsResponse

-- | <ul>
--   <li>- | The response status code.</li>
--   </ul>
ddsrsResponseStatus :: Lens' DescribeDomainsResponse Int

-- | Undocumented member.
ddsrsDomainStatusList :: Lens' DescribeDomainsResponse [DomainStatus]
instance GHC.Generics.Generic Network.AWS.CloudSearch.DescribeDomains.DescribeDomainsResponse
instance Data.Data.Data Network.AWS.CloudSearch.DescribeDomains.DescribeDomainsResponse
instance GHC.Show.Show Network.AWS.CloudSearch.DescribeDomains.DescribeDomainsResponse
instance GHC.Read.Read Network.AWS.CloudSearch.DescribeDomains.DescribeDomainsResponse
instance GHC.Classes.Eq Network.AWS.CloudSearch.DescribeDomains.DescribeDomainsResponse
instance GHC.Generics.Generic Network.AWS.CloudSearch.DescribeDomains.DescribeDomains
instance Data.Data.Data Network.AWS.CloudSearch.DescribeDomains.DescribeDomains
instance GHC.Show.Show Network.AWS.CloudSearch.DescribeDomains.DescribeDomains
instance GHC.Read.Read Network.AWS.CloudSearch.DescribeDomains.DescribeDomains
instance GHC.Classes.Eq Network.AWS.CloudSearch.DescribeDomains.DescribeDomains
instance Network.AWS.Types.AWSRequest Network.AWS.CloudSearch.DescribeDomains.DescribeDomains
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DescribeDomains.DescribeDomainsResponse
instance Data.Hashable.Class.Hashable Network.AWS.CloudSearch.DescribeDomains.DescribeDomains
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DescribeDomains.DescribeDomains
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudSearch.DescribeDomains.DescribeDomains
instance Network.AWS.Data.Path.ToPath Network.AWS.CloudSearch.DescribeDomains.DescribeDomains
instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudSearch.DescribeDomains.DescribeDomains


-- | Gets the availability options configured for a domain. By default,
--   shows the configuration with any pending changes. Set the
--   <tt>Deployed</tt> option to <tt>true</tt> to show the active
--   configuration and exclude pending changes. For more information, see
--   <a>Configuring Availability Options</a> in the <i>Amazon CloudSearch
--   Developer Guide</i> .
module Network.AWS.CloudSearch.DescribeAvailabilityOptions

-- | Creates a value of <a>DescribeAvailabilityOptions</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>daoDeployed</a> - Whether to display the deployed configuration
--   (<tt>true</tt> ) or include any pending changes (<tt>false</tt> ).
--   Defaults to <tt>false</tt> .</li>
--   <li><a>daoDomainName</a> - The name of the domain you want to
--   describe.</li>
--   </ul>
describeAvailabilityOptions :: Text -> DescribeAvailabilityOptions

-- | Container for the parameters to the
--   <tt><a>DescribeAvailabilityOptions</a> </tt> operation. Specifies the
--   name of the domain you want to describe. To show the active
--   configuration and exclude any pending changes, set the Deployed option
--   to <tt>true</tt> .
--   
--   <i>See:</i> <a>describeAvailabilityOptions</a> smart constructor.
data DescribeAvailabilityOptions

-- | Whether to display the deployed configuration (<tt>true</tt> ) or
--   include any pending changes (<tt>false</tt> ). Defaults to
--   <tt>false</tt> .
daoDeployed :: Lens' DescribeAvailabilityOptions (Maybe Bool)

-- | The name of the domain you want to describe.
daoDomainName :: Lens' DescribeAvailabilityOptions Text

-- | Creates a value of <a>DescribeAvailabilityOptionsResponse</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>daorsAvailabilityOptions</a> - The availability options
--   configured for the domain. Indicates whether Multi-AZ is enabled for
--   the domain.</li>
--   <li><a>daorsResponseStatus</a> - -- | The response status code.</li>
--   </ul>
describeAvailabilityOptionsResponse :: Int -> DescribeAvailabilityOptionsResponse

-- | The result of a <tt>DescribeAvailabilityOptions</tt> request.
--   Indicates whether or not the Multi-AZ option is enabled for the domain
--   specified in the request.
--   
--   <i>See:</i> <a>describeAvailabilityOptionsResponse</a> smart
--   constructor.
data DescribeAvailabilityOptionsResponse

-- | The availability options configured for the domain. Indicates whether
--   Multi-AZ is enabled for the domain.
daorsAvailabilityOptions :: Lens' DescribeAvailabilityOptionsResponse (Maybe AvailabilityOptionsStatus)

-- | <ul>
--   <li>- | The response status code.</li>
--   </ul>
daorsResponseStatus :: Lens' DescribeAvailabilityOptionsResponse Int
instance GHC.Generics.Generic Network.AWS.CloudSearch.DescribeAvailabilityOptions.DescribeAvailabilityOptionsResponse
instance Data.Data.Data Network.AWS.CloudSearch.DescribeAvailabilityOptions.DescribeAvailabilityOptionsResponse
instance GHC.Show.Show Network.AWS.CloudSearch.DescribeAvailabilityOptions.DescribeAvailabilityOptionsResponse
instance GHC.Read.Read Network.AWS.CloudSearch.DescribeAvailabilityOptions.DescribeAvailabilityOptionsResponse
instance GHC.Classes.Eq Network.AWS.CloudSearch.DescribeAvailabilityOptions.DescribeAvailabilityOptionsResponse
instance GHC.Generics.Generic Network.AWS.CloudSearch.DescribeAvailabilityOptions.DescribeAvailabilityOptions
instance Data.Data.Data Network.AWS.CloudSearch.DescribeAvailabilityOptions.DescribeAvailabilityOptions
instance GHC.Show.Show Network.AWS.CloudSearch.DescribeAvailabilityOptions.DescribeAvailabilityOptions
instance GHC.Read.Read Network.AWS.CloudSearch.DescribeAvailabilityOptions.DescribeAvailabilityOptions
instance GHC.Classes.Eq Network.AWS.CloudSearch.DescribeAvailabilityOptions.DescribeAvailabilityOptions
instance Network.AWS.Types.AWSRequest Network.AWS.CloudSearch.DescribeAvailabilityOptions.DescribeAvailabilityOptions
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DescribeAvailabilityOptions.DescribeAvailabilityOptionsResponse
instance Data.Hashable.Class.Hashable Network.AWS.CloudSearch.DescribeAvailabilityOptions.DescribeAvailabilityOptions
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DescribeAvailabilityOptions.DescribeAvailabilityOptions
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudSearch.DescribeAvailabilityOptions.DescribeAvailabilityOptions
instance Network.AWS.Data.Path.ToPath Network.AWS.CloudSearch.DescribeAvailabilityOptions.DescribeAvailabilityOptions
instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudSearch.DescribeAvailabilityOptions.DescribeAvailabilityOptions


-- | Gets the analysis schemes configured for a domain. An analysis scheme
--   defines language-specific text processing options for a <tt>text</tt>
--   field. Can be limited to specific analysis schemes by name. By
--   default, shows all analysis schemes and includes any pending changes
--   to the configuration. Set the <tt>Deployed</tt> option to
--   <tt>true</tt> to show the active configuration and exclude pending
--   changes. For more information, see <a>Configuring Analysis Schemes</a>
--   in the <i>Amazon CloudSearch Developer Guide</i> .
module Network.AWS.CloudSearch.DescribeAnalysisSchemes

-- | Creates a value of <a>DescribeAnalysisSchemes</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>dassDeployed</a> - Whether to display the deployed
--   configuration (<tt>true</tt> ) or include any pending changes
--   (<tt>false</tt> ). Defaults to <tt>false</tt> .</li>
--   <li><a>dassAnalysisSchemeNames</a> - The analysis schemes you want to
--   describe.</li>
--   <li><a>dassDomainName</a> - The name of the domain you want to
--   describe.</li>
--   </ul>
describeAnalysisSchemes :: Text -> DescribeAnalysisSchemes

-- | Container for the parameters to the <tt><a>DescribeAnalysisSchemes</a>
--   </tt> operation. Specifies the name of the domain you want to
--   describe. To limit the response to particular analysis schemes,
--   specify the names of the analysis schemes you want to describe. To
--   show the active configuration and exclude any pending changes, set the
--   <tt>Deployed</tt> option to <tt>true</tt> .
--   
--   <i>See:</i> <a>describeAnalysisSchemes</a> smart constructor.
data DescribeAnalysisSchemes

-- | Whether to display the deployed configuration (<tt>true</tt> ) or
--   include any pending changes (<tt>false</tt> ). Defaults to
--   <tt>false</tt> .
dassDeployed :: Lens' DescribeAnalysisSchemes (Maybe Bool)

-- | The analysis schemes you want to describe.
dassAnalysisSchemeNames :: Lens' DescribeAnalysisSchemes [Text]

-- | The name of the domain you want to describe.
dassDomainName :: Lens' DescribeAnalysisSchemes Text

-- | Creates a value of <a>DescribeAnalysisSchemesResponse</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>dasrsResponseStatus</a> - -- | The response status code.</li>
--   <li><a>dasrsAnalysisSchemes</a> - The analysis scheme
--   descriptions.</li>
--   </ul>
describeAnalysisSchemesResponse :: Int -> DescribeAnalysisSchemesResponse

-- | The result of a <tt>DescribeAnalysisSchemes</tt> request. Contains the
--   analysis schemes configured for the domain specified in the request.
--   
--   <i>See:</i> <a>describeAnalysisSchemesResponse</a> smart constructor.
data DescribeAnalysisSchemesResponse

-- | <ul>
--   <li>- | The response status code.</li>
--   </ul>
dasrsResponseStatus :: Lens' DescribeAnalysisSchemesResponse Int

-- | The analysis scheme descriptions.
dasrsAnalysisSchemes :: Lens' DescribeAnalysisSchemesResponse [AnalysisSchemeStatus]
instance GHC.Generics.Generic Network.AWS.CloudSearch.DescribeAnalysisSchemes.DescribeAnalysisSchemesResponse
instance Data.Data.Data Network.AWS.CloudSearch.DescribeAnalysisSchemes.DescribeAnalysisSchemesResponse
instance GHC.Show.Show Network.AWS.CloudSearch.DescribeAnalysisSchemes.DescribeAnalysisSchemesResponse
instance GHC.Read.Read Network.AWS.CloudSearch.DescribeAnalysisSchemes.DescribeAnalysisSchemesResponse
instance GHC.Classes.Eq Network.AWS.CloudSearch.DescribeAnalysisSchemes.DescribeAnalysisSchemesResponse
instance GHC.Generics.Generic Network.AWS.CloudSearch.DescribeAnalysisSchemes.DescribeAnalysisSchemes
instance Data.Data.Data Network.AWS.CloudSearch.DescribeAnalysisSchemes.DescribeAnalysisSchemes
instance GHC.Show.Show Network.AWS.CloudSearch.DescribeAnalysisSchemes.DescribeAnalysisSchemes
instance GHC.Read.Read Network.AWS.CloudSearch.DescribeAnalysisSchemes.DescribeAnalysisSchemes
instance GHC.Classes.Eq Network.AWS.CloudSearch.DescribeAnalysisSchemes.DescribeAnalysisSchemes
instance Network.AWS.Types.AWSRequest Network.AWS.CloudSearch.DescribeAnalysisSchemes.DescribeAnalysisSchemes
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DescribeAnalysisSchemes.DescribeAnalysisSchemesResponse
instance Data.Hashable.Class.Hashable Network.AWS.CloudSearch.DescribeAnalysisSchemes.DescribeAnalysisSchemes
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DescribeAnalysisSchemes.DescribeAnalysisSchemes
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudSearch.DescribeAnalysisSchemes.DescribeAnalysisSchemes
instance Network.AWS.Data.Path.ToPath Network.AWS.CloudSearch.DescribeAnalysisSchemes.DescribeAnalysisSchemes
instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudSearch.DescribeAnalysisSchemes.DescribeAnalysisSchemes


-- | Deletes a suggester. For more information, see <a>Getting Search
--   Suggestions</a> in the <i>Amazon CloudSearch Developer Guide</i> .
module Network.AWS.CloudSearch.DeleteSuggester

-- | Creates a value of <a>DeleteSuggester</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>ddDomainName</a> - Undocumented member.</li>
--   <li><a>ddSuggesterName</a> - Specifies the name of the suggester you
--   want to delete.</li>
--   </ul>
deleteSuggester :: Text -> Text -> DeleteSuggester

-- | Container for the parameters to the <tt><a>DeleteSuggester</a> </tt>
--   operation. Specifies the name of the domain you want to update and
--   name of the suggester you want to delete.
--   
--   <i>See:</i> <a>deleteSuggester</a> smart constructor.
data DeleteSuggester

-- | Undocumented member.
ddDomainName :: Lens' DeleteSuggester Text

-- | Specifies the name of the suggester you want to delete.
ddSuggesterName :: Lens' DeleteSuggester Text

-- | Creates a value of <a>DeleteSuggesterResponse</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>delersResponseStatus</a> - -- | The response status code.</li>
--   <li><a>delersSuggester</a> - The status of the suggester being
--   deleted.</li>
--   </ul>
deleteSuggesterResponse :: Int -> SuggesterStatus -> DeleteSuggesterResponse

-- | The result of a <tt>DeleteSuggester</tt> request. Contains the status
--   of the deleted suggester.
--   
--   <i>See:</i> <a>deleteSuggesterResponse</a> smart constructor.
data DeleteSuggesterResponse

-- | <ul>
--   <li>- | The response status code.</li>
--   </ul>
delersResponseStatus :: Lens' DeleteSuggesterResponse Int

-- | The status of the suggester being deleted.
delersSuggester :: Lens' DeleteSuggesterResponse SuggesterStatus
instance GHC.Generics.Generic Network.AWS.CloudSearch.DeleteSuggester.DeleteSuggesterResponse
instance Data.Data.Data Network.AWS.CloudSearch.DeleteSuggester.DeleteSuggesterResponse
instance GHC.Show.Show Network.AWS.CloudSearch.DeleteSuggester.DeleteSuggesterResponse
instance GHC.Read.Read Network.AWS.CloudSearch.DeleteSuggester.DeleteSuggesterResponse
instance GHC.Classes.Eq Network.AWS.CloudSearch.DeleteSuggester.DeleteSuggesterResponse
instance GHC.Generics.Generic Network.AWS.CloudSearch.DeleteSuggester.DeleteSuggester
instance Data.Data.Data Network.AWS.CloudSearch.DeleteSuggester.DeleteSuggester
instance GHC.Show.Show Network.AWS.CloudSearch.DeleteSuggester.DeleteSuggester
instance GHC.Read.Read Network.AWS.CloudSearch.DeleteSuggester.DeleteSuggester
instance GHC.Classes.Eq Network.AWS.CloudSearch.DeleteSuggester.DeleteSuggester
instance Network.AWS.Types.AWSRequest Network.AWS.CloudSearch.DeleteSuggester.DeleteSuggester
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DeleteSuggester.DeleteSuggesterResponse
instance Data.Hashable.Class.Hashable Network.AWS.CloudSearch.DeleteSuggester.DeleteSuggester
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DeleteSuggester.DeleteSuggester
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudSearch.DeleteSuggester.DeleteSuggester
instance Network.AWS.Data.Path.ToPath Network.AWS.CloudSearch.DeleteSuggester.DeleteSuggester
instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudSearch.DeleteSuggester.DeleteSuggester


-- | Removes an <tt><a>IndexField</a> </tt> from the search domain. For
--   more information, see <a>Configuring Index Fields</a> in the <i>Amazon
--   CloudSearch Developer Guide</i> .
module Network.AWS.CloudSearch.DeleteIndexField

-- | Creates a value of <a>DeleteIndexField</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>difiDomainName</a> - Undocumented member.</li>
--   <li><a>difiIndexFieldName</a> - The name of the index field your want
--   to remove from the domain's indexing options.</li>
--   </ul>
deleteIndexField :: Text -> Text -> DeleteIndexField

-- | Container for the parameters to the <tt><a>DeleteIndexField</a> </tt>
--   operation. Specifies the name of the domain you want to update and the
--   name of the index field you want to delete.
--   
--   <i>See:</i> <a>deleteIndexField</a> smart constructor.
data DeleteIndexField

-- | Undocumented member.
difiDomainName :: Lens' DeleteIndexField Text

-- | The name of the index field your want to remove from the domain's
--   indexing options.
difiIndexFieldName :: Lens' DeleteIndexField Text

-- | Creates a value of <a>DeleteIndexFieldResponse</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>difrsResponseStatus</a> - -- | The response status code.</li>
--   <li><a>difrsIndexField</a> - The status of the index field being
--   deleted.</li>
--   </ul>
deleteIndexFieldResponse :: Int -> IndexFieldStatus -> DeleteIndexFieldResponse

-- | The result of a <tt><a>DeleteIndexField</a> </tt> request.
--   
--   <i>See:</i> <a>deleteIndexFieldResponse</a> smart constructor.
data DeleteIndexFieldResponse

-- | <ul>
--   <li>- | The response status code.</li>
--   </ul>
difrsResponseStatus :: Lens' DeleteIndexFieldResponse Int

-- | The status of the index field being deleted.
difrsIndexField :: Lens' DeleteIndexFieldResponse IndexFieldStatus
instance GHC.Generics.Generic Network.AWS.CloudSearch.DeleteIndexField.DeleteIndexFieldResponse
instance Data.Data.Data Network.AWS.CloudSearch.DeleteIndexField.DeleteIndexFieldResponse
instance GHC.Show.Show Network.AWS.CloudSearch.DeleteIndexField.DeleteIndexFieldResponse
instance GHC.Read.Read Network.AWS.CloudSearch.DeleteIndexField.DeleteIndexFieldResponse
instance GHC.Classes.Eq Network.AWS.CloudSearch.DeleteIndexField.DeleteIndexFieldResponse
instance GHC.Generics.Generic Network.AWS.CloudSearch.DeleteIndexField.DeleteIndexField
instance Data.Data.Data Network.AWS.CloudSearch.DeleteIndexField.DeleteIndexField
instance GHC.Show.Show Network.AWS.CloudSearch.DeleteIndexField.DeleteIndexField
instance GHC.Read.Read Network.AWS.CloudSearch.DeleteIndexField.DeleteIndexField
instance GHC.Classes.Eq Network.AWS.CloudSearch.DeleteIndexField.DeleteIndexField
instance Network.AWS.Types.AWSRequest Network.AWS.CloudSearch.DeleteIndexField.DeleteIndexField
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DeleteIndexField.DeleteIndexFieldResponse
instance Data.Hashable.Class.Hashable Network.AWS.CloudSearch.DeleteIndexField.DeleteIndexField
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DeleteIndexField.DeleteIndexField
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudSearch.DeleteIndexField.DeleteIndexField
instance Network.AWS.Data.Path.ToPath Network.AWS.CloudSearch.DeleteIndexField.DeleteIndexField
instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudSearch.DeleteIndexField.DeleteIndexField


-- | Removes an <tt><a>Expression</a> </tt> from the search domain. For
--   more information, see <a>Configuring Expressions</a> in the <i>Amazon
--   CloudSearch Developer Guide</i> .
module Network.AWS.CloudSearch.DeleteExpression

-- | Creates a value of <a>DeleteExpression</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>delDomainName</a> - Undocumented member.</li>
--   <li><a>delExpressionName</a> - The name of the <tt><a>Expression</a>
--   </tt> to delete.</li>
--   </ul>
deleteExpression :: Text -> Text -> DeleteExpression

-- | Container for the parameters to the <tt><a>DeleteExpression</a> </tt>
--   operation. Specifies the name of the domain you want to update and the
--   name of the expression you want to delete.
--   
--   <i>See:</i> <a>deleteExpression</a> smart constructor.
data DeleteExpression

-- | Undocumented member.
delDomainName :: Lens' DeleteExpression Text

-- | The name of the <tt><a>Expression</a> </tt> to delete.
delExpressionName :: Lens' DeleteExpression Text

-- | Creates a value of <a>DeleteExpressionResponse</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>delrsResponseStatus</a> - -- | The response status code.</li>
--   <li><a>delrsExpression</a> - The status of the expression being
--   deleted.</li>
--   </ul>
deleteExpressionResponse :: Int -> ExpressionStatus -> DeleteExpressionResponse

-- | The result of a <tt><a>DeleteExpression</a> </tt> request. Specifies
--   the expression being deleted.
--   
--   <i>See:</i> <a>deleteExpressionResponse</a> smart constructor.
data DeleteExpressionResponse

-- | <ul>
--   <li>- | The response status code.</li>
--   </ul>
delrsResponseStatus :: Lens' DeleteExpressionResponse Int

-- | The status of the expression being deleted.
delrsExpression :: Lens' DeleteExpressionResponse ExpressionStatus
instance GHC.Generics.Generic Network.AWS.CloudSearch.DeleteExpression.DeleteExpressionResponse
instance Data.Data.Data Network.AWS.CloudSearch.DeleteExpression.DeleteExpressionResponse
instance GHC.Show.Show Network.AWS.CloudSearch.DeleteExpression.DeleteExpressionResponse
instance GHC.Read.Read Network.AWS.CloudSearch.DeleteExpression.DeleteExpressionResponse
instance GHC.Classes.Eq Network.AWS.CloudSearch.DeleteExpression.DeleteExpressionResponse
instance GHC.Generics.Generic Network.AWS.CloudSearch.DeleteExpression.DeleteExpression
instance Data.Data.Data Network.AWS.CloudSearch.DeleteExpression.DeleteExpression
instance GHC.Show.Show Network.AWS.CloudSearch.DeleteExpression.DeleteExpression
instance GHC.Read.Read Network.AWS.CloudSearch.DeleteExpression.DeleteExpression
instance GHC.Classes.Eq Network.AWS.CloudSearch.DeleteExpression.DeleteExpression
instance Network.AWS.Types.AWSRequest Network.AWS.CloudSearch.DeleteExpression.DeleteExpression
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DeleteExpression.DeleteExpressionResponse
instance Data.Hashable.Class.Hashable Network.AWS.CloudSearch.DeleteExpression.DeleteExpression
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DeleteExpression.DeleteExpression
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudSearch.DeleteExpression.DeleteExpression
instance Network.AWS.Data.Path.ToPath Network.AWS.CloudSearch.DeleteExpression.DeleteExpression
instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudSearch.DeleteExpression.DeleteExpression


-- | Permanently deletes a search domain and all of its data. Once a domain
--   has been deleted, it cannot be recovered. For more information, see
--   <a>Deleting a Search Domain</a> in the <i>Amazon CloudSearch Developer
--   Guide</i> .
module Network.AWS.CloudSearch.DeleteDomain

-- | Creates a value of <a>DeleteDomain</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>dddDomainName</a> - The name of the domain you want to
--   permanently delete.</li>
--   </ul>
deleteDomain :: Text -> DeleteDomain

-- | Container for the parameters to the <tt><a>DeleteDomain</a> </tt>
--   operation. Specifies the name of the domain you want to delete.
--   
--   <i>See:</i> <a>deleteDomain</a> smart constructor.
data DeleteDomain

-- | The name of the domain you want to permanently delete.
dddDomainName :: Lens' DeleteDomain Text

-- | Creates a value of <a>DeleteDomainResponse</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>ddrsDomainStatus</a> - Undocumented member.</li>
--   <li><a>ddrsResponseStatus</a> - -- | The response status code.</li>
--   </ul>
deleteDomainResponse :: Int -> DeleteDomainResponse

-- | The result of a <tt>DeleteDomain</tt> request. Contains the status of
--   a newly deleted domain, or no status if the domain has already been
--   completely deleted.
--   
--   <i>See:</i> <a>deleteDomainResponse</a> smart constructor.
data DeleteDomainResponse

-- | Undocumented member.
ddrsDomainStatus :: Lens' DeleteDomainResponse (Maybe DomainStatus)

-- | <ul>
--   <li>- | The response status code.</li>
--   </ul>
ddrsResponseStatus :: Lens' DeleteDomainResponse Int
instance GHC.Generics.Generic Network.AWS.CloudSearch.DeleteDomain.DeleteDomainResponse
instance Data.Data.Data Network.AWS.CloudSearch.DeleteDomain.DeleteDomainResponse
instance GHC.Show.Show Network.AWS.CloudSearch.DeleteDomain.DeleteDomainResponse
instance GHC.Read.Read Network.AWS.CloudSearch.DeleteDomain.DeleteDomainResponse
instance GHC.Classes.Eq Network.AWS.CloudSearch.DeleteDomain.DeleteDomainResponse
instance GHC.Generics.Generic Network.AWS.CloudSearch.DeleteDomain.DeleteDomain
instance Data.Data.Data Network.AWS.CloudSearch.DeleteDomain.DeleteDomain
instance GHC.Show.Show Network.AWS.CloudSearch.DeleteDomain.DeleteDomain
instance GHC.Read.Read Network.AWS.CloudSearch.DeleteDomain.DeleteDomain
instance GHC.Classes.Eq Network.AWS.CloudSearch.DeleteDomain.DeleteDomain
instance Network.AWS.Types.AWSRequest Network.AWS.CloudSearch.DeleteDomain.DeleteDomain
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DeleteDomain.DeleteDomainResponse
instance Data.Hashable.Class.Hashable Network.AWS.CloudSearch.DeleteDomain.DeleteDomain
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DeleteDomain.DeleteDomain
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudSearch.DeleteDomain.DeleteDomain
instance Network.AWS.Data.Path.ToPath Network.AWS.CloudSearch.DeleteDomain.DeleteDomain
instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudSearch.DeleteDomain.DeleteDomain


-- | Deletes an analysis scheme. For more information, see <a>Configuring
--   Analysis Schemes</a> in the <i>Amazon CloudSearch Developer Guide</i>
--   .
module Network.AWS.CloudSearch.DeleteAnalysisScheme

-- | Creates a value of <a>DeleteAnalysisScheme</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>dasDomainName</a> - Undocumented member.</li>
--   <li><a>dasAnalysisSchemeName</a> - The name of the analysis scheme you
--   want to delete.</li>
--   </ul>
deleteAnalysisScheme :: Text -> Text -> DeleteAnalysisScheme

-- | Container for the parameters to the <tt><a>DeleteAnalysisScheme</a>
--   </tt> operation. Specifies the name of the domain you want to update
--   and the analysis scheme you want to delete.
--   
--   <i>See:</i> <a>deleteAnalysisScheme</a> smart constructor.
data DeleteAnalysisScheme

-- | Undocumented member.
dasDomainName :: Lens' DeleteAnalysisScheme Text

-- | The name of the analysis scheme you want to delete.
dasAnalysisSchemeName :: Lens' DeleteAnalysisScheme Text

-- | Creates a value of <a>DeleteAnalysisSchemeResponse</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>dasarsResponseStatus</a> - -- | The response status code.</li>
--   <li><a>dasarsAnalysisScheme</a> - The status of the analysis scheme
--   being deleted.</li>
--   </ul>
deleteAnalysisSchemeResponse :: Int -> AnalysisSchemeStatus -> DeleteAnalysisSchemeResponse

-- | The result of a <tt>DeleteAnalysisScheme</tt> request. Contains the
--   status of the deleted analysis scheme.
--   
--   <i>See:</i> <a>deleteAnalysisSchemeResponse</a> smart constructor.
data DeleteAnalysisSchemeResponse

-- | <ul>
--   <li>- | The response status code.</li>
--   </ul>
dasarsResponseStatus :: Lens' DeleteAnalysisSchemeResponse Int

-- | The status of the analysis scheme being deleted.
dasarsAnalysisScheme :: Lens' DeleteAnalysisSchemeResponse AnalysisSchemeStatus
instance GHC.Generics.Generic Network.AWS.CloudSearch.DeleteAnalysisScheme.DeleteAnalysisSchemeResponse
instance Data.Data.Data Network.AWS.CloudSearch.DeleteAnalysisScheme.DeleteAnalysisSchemeResponse
instance GHC.Show.Show Network.AWS.CloudSearch.DeleteAnalysisScheme.DeleteAnalysisSchemeResponse
instance GHC.Read.Read Network.AWS.CloudSearch.DeleteAnalysisScheme.DeleteAnalysisSchemeResponse
instance GHC.Classes.Eq Network.AWS.CloudSearch.DeleteAnalysisScheme.DeleteAnalysisSchemeResponse
instance GHC.Generics.Generic Network.AWS.CloudSearch.DeleteAnalysisScheme.DeleteAnalysisScheme
instance Data.Data.Data Network.AWS.CloudSearch.DeleteAnalysisScheme.DeleteAnalysisScheme
instance GHC.Show.Show Network.AWS.CloudSearch.DeleteAnalysisScheme.DeleteAnalysisScheme
instance GHC.Read.Read Network.AWS.CloudSearch.DeleteAnalysisScheme.DeleteAnalysisScheme
instance GHC.Classes.Eq Network.AWS.CloudSearch.DeleteAnalysisScheme.DeleteAnalysisScheme
instance Network.AWS.Types.AWSRequest Network.AWS.CloudSearch.DeleteAnalysisScheme.DeleteAnalysisScheme
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DeleteAnalysisScheme.DeleteAnalysisSchemeResponse
instance Data.Hashable.Class.Hashable Network.AWS.CloudSearch.DeleteAnalysisScheme.DeleteAnalysisScheme
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DeleteAnalysisScheme.DeleteAnalysisScheme
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudSearch.DeleteAnalysisScheme.DeleteAnalysisScheme
instance Network.AWS.Data.Path.ToPath Network.AWS.CloudSearch.DeleteAnalysisScheme.DeleteAnalysisScheme
instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudSearch.DeleteAnalysisScheme.DeleteAnalysisScheme


-- | Configures a suggester for a domain. A suggester enables you to
--   display possible matches before users finish typing their queries.
--   When you configure a suggester, you must specify the name of the text
--   field you want to search for possible matches and a unique name for
--   the suggester. For more information, see <a>Getting Search
--   Suggestions</a> in the <i>Amazon CloudSearch Developer Guide</i> .
module Network.AWS.CloudSearch.DefineSuggester

-- | Creates a value of <a>DefineSuggester</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>defDomainName</a> - Undocumented member.</li>
--   <li><a>defSuggester</a> - Undocumented member.</li>
--   </ul>
defineSuggester :: Text -> Suggester -> DefineSuggester

-- | Container for the parameters to the <tt><a>DefineSuggester</a> </tt>
--   operation. Specifies the name of the domain you want to update and the
--   suggester configuration.
--   
--   <i>See:</i> <a>defineSuggester</a> smart constructor.
data DefineSuggester

-- | Undocumented member.
defDomainName :: Lens' DefineSuggester Text

-- | Undocumented member.
defSuggester :: Lens' DefineSuggester Suggester

-- | Creates a value of <a>DefineSuggesterResponse</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>dsrsResponseStatus</a> - -- | The response status code.</li>
--   <li><a>dsrsSuggester</a> - Undocumented member.</li>
--   </ul>
defineSuggesterResponse :: Int -> SuggesterStatus -> DefineSuggesterResponse

-- | The result of a <tt>DefineSuggester</tt> request. Contains the status
--   of the newly-configured suggester.
--   
--   <i>See:</i> <a>defineSuggesterResponse</a> smart constructor.
data DefineSuggesterResponse

-- | <ul>
--   <li>- | The response status code.</li>
--   </ul>
dsrsResponseStatus :: Lens' DefineSuggesterResponse Int

-- | Undocumented member.
dsrsSuggester :: Lens' DefineSuggesterResponse SuggesterStatus
instance GHC.Generics.Generic Network.AWS.CloudSearch.DefineSuggester.DefineSuggesterResponse
instance Data.Data.Data Network.AWS.CloudSearch.DefineSuggester.DefineSuggesterResponse
instance GHC.Show.Show Network.AWS.CloudSearch.DefineSuggester.DefineSuggesterResponse
instance GHC.Read.Read Network.AWS.CloudSearch.DefineSuggester.DefineSuggesterResponse
instance GHC.Classes.Eq Network.AWS.CloudSearch.DefineSuggester.DefineSuggesterResponse
instance GHC.Generics.Generic Network.AWS.CloudSearch.DefineSuggester.DefineSuggester
instance Data.Data.Data Network.AWS.CloudSearch.DefineSuggester.DefineSuggester
instance GHC.Show.Show Network.AWS.CloudSearch.DefineSuggester.DefineSuggester
instance GHC.Read.Read Network.AWS.CloudSearch.DefineSuggester.DefineSuggester
instance GHC.Classes.Eq Network.AWS.CloudSearch.DefineSuggester.DefineSuggester
instance Network.AWS.Types.AWSRequest Network.AWS.CloudSearch.DefineSuggester.DefineSuggester
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DefineSuggester.DefineSuggesterResponse
instance Data.Hashable.Class.Hashable Network.AWS.CloudSearch.DefineSuggester.DefineSuggester
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DefineSuggester.DefineSuggester
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudSearch.DefineSuggester.DefineSuggester
instance Network.AWS.Data.Path.ToPath Network.AWS.CloudSearch.DefineSuggester.DefineSuggester
instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudSearch.DefineSuggester.DefineSuggester


-- | Configures an <tt><a>IndexField</a> </tt> for the search domain. Used
--   to create new fields and modify existing ones. You must specify the
--   name of the domain you are configuring and an index field
--   configuration. The index field configuration specifies a unique name,
--   the index field type, and the options you want to configure for the
--   field. The options you can specify depend on the
--   <tt><a>IndexFieldType</a> </tt> . If the field exists, the new
--   configuration replaces the old one. For more information, see
--   <a>Configuring Index Fields</a> in the <i>Amazon CloudSearch Developer
--   Guide</i> .
module Network.AWS.CloudSearch.DefineIndexField

-- | Creates a value of <a>DefineIndexField</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>defeDomainName</a> - Undocumented member.</li>
--   <li><a>defeIndexField</a> - The index field and field options you want
--   to configure.</li>
--   </ul>
defineIndexField :: Text -> IndexField -> DefineIndexField

-- | Container for the parameters to the <tt><a>DefineIndexField</a> </tt>
--   operation. Specifies the name of the domain you want to update and the
--   index field configuration.
--   
--   <i>See:</i> <a>defineIndexField</a> smart constructor.
data DefineIndexField

-- | Undocumented member.
defeDomainName :: Lens' DefineIndexField Text

-- | The index field and field options you want to configure.
defeIndexField :: Lens' DefineIndexField IndexField

-- | Creates a value of <a>DefineIndexFieldResponse</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>defrsResponseStatus</a> - -- | The response status code.</li>
--   <li><a>defrsIndexField</a> - Undocumented member.</li>
--   </ul>
defineIndexFieldResponse :: Int -> IndexFieldStatus -> DefineIndexFieldResponse

-- | The result of a <tt><a>DefineIndexField</a> </tt> request. Contains
--   the status of the newly-configured index field.
--   
--   <i>See:</i> <a>defineIndexFieldResponse</a> smart constructor.
data DefineIndexFieldResponse

-- | <ul>
--   <li>- | The response status code.</li>
--   </ul>
defrsResponseStatus :: Lens' DefineIndexFieldResponse Int

-- | Undocumented member.
defrsIndexField :: Lens' DefineIndexFieldResponse IndexFieldStatus
instance GHC.Generics.Generic Network.AWS.CloudSearch.DefineIndexField.DefineIndexFieldResponse
instance Data.Data.Data Network.AWS.CloudSearch.DefineIndexField.DefineIndexFieldResponse
instance GHC.Show.Show Network.AWS.CloudSearch.DefineIndexField.DefineIndexFieldResponse
instance GHC.Read.Read Network.AWS.CloudSearch.DefineIndexField.DefineIndexFieldResponse
instance GHC.Classes.Eq Network.AWS.CloudSearch.DefineIndexField.DefineIndexFieldResponse
instance GHC.Generics.Generic Network.AWS.CloudSearch.DefineIndexField.DefineIndexField
instance Data.Data.Data Network.AWS.CloudSearch.DefineIndexField.DefineIndexField
instance GHC.Show.Show Network.AWS.CloudSearch.DefineIndexField.DefineIndexField
instance GHC.Read.Read Network.AWS.CloudSearch.DefineIndexField.DefineIndexField
instance GHC.Classes.Eq Network.AWS.CloudSearch.DefineIndexField.DefineIndexField
instance Network.AWS.Types.AWSRequest Network.AWS.CloudSearch.DefineIndexField.DefineIndexField
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DefineIndexField.DefineIndexFieldResponse
instance Data.Hashable.Class.Hashable Network.AWS.CloudSearch.DefineIndexField.DefineIndexField
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DefineIndexField.DefineIndexField
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudSearch.DefineIndexField.DefineIndexField
instance Network.AWS.Data.Path.ToPath Network.AWS.CloudSearch.DefineIndexField.DefineIndexField
instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudSearch.DefineIndexField.DefineIndexField


-- | Configures an <tt><a>Expression</a> </tt> for the search domain. Used
--   to create new expressions and modify existing ones. If the expression
--   exists, the new configuration replaces the old one. For more
--   information, see <a>Configuring Expressions</a> in the <i>Amazon
--   CloudSearch Developer Guide</i> .
module Network.AWS.CloudSearch.DefineExpression

-- | Creates a value of <a>DefineExpression</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>dDomainName</a> - Undocumented member.</li>
--   <li><a>dExpression</a> - Undocumented member.</li>
--   </ul>
defineExpression :: Text -> Expression -> DefineExpression

-- | Container for the parameters to the <tt><a>DefineExpression</a> </tt>
--   operation. Specifies the name of the domain you want to update and the
--   expression you want to configure.
--   
--   <i>See:</i> <a>defineExpression</a> smart constructor.
data DefineExpression

-- | Undocumented member.
dDomainName :: Lens' DefineExpression Text

-- | Undocumented member.
dExpression :: Lens' DefineExpression Expression

-- | Creates a value of <a>DefineExpressionResponse</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>dersResponseStatus</a> - -- | The response status code.</li>
--   <li><a>dersExpression</a> - Undocumented member.</li>
--   </ul>
defineExpressionResponse :: Int -> ExpressionStatus -> DefineExpressionResponse

-- | The result of a <tt>DefineExpression</tt> request. Contains the status
--   of the newly-configured expression.
--   
--   <i>See:</i> <a>defineExpressionResponse</a> smart constructor.
data DefineExpressionResponse

-- | <ul>
--   <li>- | The response status code.</li>
--   </ul>
dersResponseStatus :: Lens' DefineExpressionResponse Int

-- | Undocumented member.
dersExpression :: Lens' DefineExpressionResponse ExpressionStatus
instance GHC.Generics.Generic Network.AWS.CloudSearch.DefineExpression.DefineExpressionResponse
instance Data.Data.Data Network.AWS.CloudSearch.DefineExpression.DefineExpressionResponse
instance GHC.Show.Show Network.AWS.CloudSearch.DefineExpression.DefineExpressionResponse
instance GHC.Read.Read Network.AWS.CloudSearch.DefineExpression.DefineExpressionResponse
instance GHC.Classes.Eq Network.AWS.CloudSearch.DefineExpression.DefineExpressionResponse
instance GHC.Generics.Generic Network.AWS.CloudSearch.DefineExpression.DefineExpression
instance Data.Data.Data Network.AWS.CloudSearch.DefineExpression.DefineExpression
instance GHC.Show.Show Network.AWS.CloudSearch.DefineExpression.DefineExpression
instance GHC.Read.Read Network.AWS.CloudSearch.DefineExpression.DefineExpression
instance GHC.Classes.Eq Network.AWS.CloudSearch.DefineExpression.DefineExpression
instance Network.AWS.Types.AWSRequest Network.AWS.CloudSearch.DefineExpression.DefineExpression
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DefineExpression.DefineExpressionResponse
instance Data.Hashable.Class.Hashable Network.AWS.CloudSearch.DefineExpression.DefineExpression
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DefineExpression.DefineExpression
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudSearch.DefineExpression.DefineExpression
instance Network.AWS.Data.Path.ToPath Network.AWS.CloudSearch.DefineExpression.DefineExpression
instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudSearch.DefineExpression.DefineExpression


-- | Configures an analysis scheme that can be applied to a <tt>text</tt>
--   or <tt>text-array</tt> field to define language-specific text
--   processing options. For more information, see <a>Configuring Analysis
--   Schemes</a> in the <i>Amazon CloudSearch Developer Guide</i> .
module Network.AWS.CloudSearch.DefineAnalysisScheme

-- | Creates a value of <a>DefineAnalysisScheme</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>dasaDomainName</a> - Undocumented member.</li>
--   <li><a>dasaAnalysisScheme</a> - Undocumented member.</li>
--   </ul>
defineAnalysisScheme :: Text -> AnalysisScheme -> DefineAnalysisScheme

-- | Container for the parameters to the <tt><a>DefineAnalysisScheme</a>
--   </tt> operation. Specifies the name of the domain you want to update
--   and the analysis scheme configuration.
--   
--   <i>See:</i> <a>defineAnalysisScheme</a> smart constructor.
data DefineAnalysisScheme

-- | Undocumented member.
dasaDomainName :: Lens' DefineAnalysisScheme Text

-- | Undocumented member.
dasaAnalysisScheme :: Lens' DefineAnalysisScheme AnalysisScheme

-- | Creates a value of <a>DefineAnalysisSchemeResponse</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>defersResponseStatus</a> - -- | The response status code.</li>
--   <li><a>defersAnalysisScheme</a> - Undocumented member.</li>
--   </ul>
defineAnalysisSchemeResponse :: Int -> AnalysisSchemeStatus -> DefineAnalysisSchemeResponse

-- | The result of a <tt><a>DefineAnalysisScheme</a> </tt> request.
--   Contains the status of the newly-configured analysis scheme.
--   
--   <i>See:</i> <a>defineAnalysisSchemeResponse</a> smart constructor.
data DefineAnalysisSchemeResponse

-- | <ul>
--   <li>- | The response status code.</li>
--   </ul>
defersResponseStatus :: Lens' DefineAnalysisSchemeResponse Int

-- | Undocumented member.
defersAnalysisScheme :: Lens' DefineAnalysisSchemeResponse AnalysisSchemeStatus
instance GHC.Generics.Generic Network.AWS.CloudSearch.DefineAnalysisScheme.DefineAnalysisSchemeResponse
instance Data.Data.Data Network.AWS.CloudSearch.DefineAnalysisScheme.DefineAnalysisSchemeResponse
instance GHC.Show.Show Network.AWS.CloudSearch.DefineAnalysisScheme.DefineAnalysisSchemeResponse
instance GHC.Read.Read Network.AWS.CloudSearch.DefineAnalysisScheme.DefineAnalysisSchemeResponse
instance GHC.Classes.Eq Network.AWS.CloudSearch.DefineAnalysisScheme.DefineAnalysisSchemeResponse
instance GHC.Generics.Generic Network.AWS.CloudSearch.DefineAnalysisScheme.DefineAnalysisScheme
instance Data.Data.Data Network.AWS.CloudSearch.DefineAnalysisScheme.DefineAnalysisScheme
instance GHC.Show.Show Network.AWS.CloudSearch.DefineAnalysisScheme.DefineAnalysisScheme
instance GHC.Read.Read Network.AWS.CloudSearch.DefineAnalysisScheme.DefineAnalysisScheme
instance GHC.Classes.Eq Network.AWS.CloudSearch.DefineAnalysisScheme.DefineAnalysisScheme
instance Network.AWS.Types.AWSRequest Network.AWS.CloudSearch.DefineAnalysisScheme.DefineAnalysisScheme
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DefineAnalysisScheme.DefineAnalysisSchemeResponse
instance Data.Hashable.Class.Hashable Network.AWS.CloudSearch.DefineAnalysisScheme.DefineAnalysisScheme
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DefineAnalysisScheme.DefineAnalysisScheme
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudSearch.DefineAnalysisScheme.DefineAnalysisScheme
instance Network.AWS.Data.Path.ToPath Network.AWS.CloudSearch.DefineAnalysisScheme.DefineAnalysisScheme
instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudSearch.DefineAnalysisScheme.DefineAnalysisScheme


-- | Creates a new search domain. For more information, see <a>Creating a
--   Search Domain</a> in the <i>Amazon CloudSearch Developer Guide</i> .
module Network.AWS.CloudSearch.CreateDomain

-- | Creates a value of <a>CreateDomain</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>cdDomainName</a> - A name for the domain you are creating.
--   Allowed characters are a-z (lower-case letters), 0-9, and hyphen (-).
--   Domain names must start with a letter or number and be at least 3 and
--   no more than 28 characters long.</li>
--   </ul>
createDomain :: Text -> CreateDomain

-- | Container for the parameters to the <tt><a>CreateDomain</a> </tt>
--   operation. Specifies a name for the new search domain.
--   
--   <i>See:</i> <a>createDomain</a> smart constructor.
data CreateDomain

-- | A name for the domain you are creating. Allowed characters are a-z
--   (lower-case letters), 0-9, and hyphen (-). Domain names must start
--   with a letter or number and be at least 3 and no more than 28
--   characters long.
cdDomainName :: Lens' CreateDomain Text

-- | Creates a value of <a>CreateDomainResponse</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>cdrsDomainStatus</a> - Undocumented member.</li>
--   <li><a>cdrsResponseStatus</a> - -- | The response status code.</li>
--   </ul>
createDomainResponse :: Int -> CreateDomainResponse

-- | The result of a <tt>CreateDomainRequest</tt> . Contains the status of
--   a newly created domain.
--   
--   <i>See:</i> <a>createDomainResponse</a> smart constructor.
data CreateDomainResponse

-- | Undocumented member.
cdrsDomainStatus :: Lens' CreateDomainResponse (Maybe DomainStatus)

-- | <ul>
--   <li>- | The response status code.</li>
--   </ul>
cdrsResponseStatus :: Lens' CreateDomainResponse Int
instance GHC.Generics.Generic Network.AWS.CloudSearch.CreateDomain.CreateDomainResponse
instance Data.Data.Data Network.AWS.CloudSearch.CreateDomain.CreateDomainResponse
instance GHC.Show.Show Network.AWS.CloudSearch.CreateDomain.CreateDomainResponse
instance GHC.Read.Read Network.AWS.CloudSearch.CreateDomain.CreateDomainResponse
instance GHC.Classes.Eq Network.AWS.CloudSearch.CreateDomain.CreateDomainResponse
instance GHC.Generics.Generic Network.AWS.CloudSearch.CreateDomain.CreateDomain
instance Data.Data.Data Network.AWS.CloudSearch.CreateDomain.CreateDomain
instance GHC.Show.Show Network.AWS.CloudSearch.CreateDomain.CreateDomain
instance GHC.Read.Read Network.AWS.CloudSearch.CreateDomain.CreateDomain
instance GHC.Classes.Eq Network.AWS.CloudSearch.CreateDomain.CreateDomain
instance Network.AWS.Types.AWSRequest Network.AWS.CloudSearch.CreateDomain.CreateDomain
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.CreateDomain.CreateDomainResponse
instance Data.Hashable.Class.Hashable Network.AWS.CloudSearch.CreateDomain.CreateDomain
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.CreateDomain.CreateDomain
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudSearch.CreateDomain.CreateDomain
instance Network.AWS.Data.Path.ToPath Network.AWS.CloudSearch.CreateDomain.CreateDomain
instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudSearch.CreateDomain.CreateDomain


-- | Indexes the search suggestions. For more information, see
--   <a>Configuring Suggesters</a> in the <i>Amazon CloudSearch Developer
--   Guide</i> .
module Network.AWS.CloudSearch.BuildSuggesters

-- | Creates a value of <a>BuildSuggesters</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>bsDomainName</a> - Undocumented member.</li>
--   </ul>
buildSuggesters :: Text -> BuildSuggesters

-- | Container for the parameters to the <tt><tt>BuildSuggester</tt> </tt>
--   operation. Specifies the name of the domain you want to update.
--   
--   <i>See:</i> <a>buildSuggesters</a> smart constructor.
data BuildSuggesters

-- | Undocumented member.
bsDomainName :: Lens' BuildSuggesters Text

-- | Creates a value of <a>BuildSuggestersResponse</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>bsrsFieldNames</a> - Undocumented member.</li>
--   <li><a>bsrsResponseStatus</a> - -- | The response status code.</li>
--   </ul>
buildSuggestersResponse :: Int -> BuildSuggestersResponse

-- | The result of a <tt>BuildSuggester</tt> request. Contains a list of
--   the fields used for suggestions.
--   
--   <i>See:</i> <a>buildSuggestersResponse</a> smart constructor.
data BuildSuggestersResponse

-- | Undocumented member.
bsrsFieldNames :: Lens' BuildSuggestersResponse [Text]

-- | <ul>
--   <li>- | The response status code.</li>
--   </ul>
bsrsResponseStatus :: Lens' BuildSuggestersResponse Int
instance GHC.Generics.Generic Network.AWS.CloudSearch.BuildSuggesters.BuildSuggestersResponse
instance Data.Data.Data Network.AWS.CloudSearch.BuildSuggesters.BuildSuggestersResponse
instance GHC.Show.Show Network.AWS.CloudSearch.BuildSuggesters.BuildSuggestersResponse
instance GHC.Read.Read Network.AWS.CloudSearch.BuildSuggesters.BuildSuggestersResponse
instance GHC.Classes.Eq Network.AWS.CloudSearch.BuildSuggesters.BuildSuggestersResponse
instance GHC.Generics.Generic Network.AWS.CloudSearch.BuildSuggesters.BuildSuggesters
instance Data.Data.Data Network.AWS.CloudSearch.BuildSuggesters.BuildSuggesters
instance GHC.Show.Show Network.AWS.CloudSearch.BuildSuggesters.BuildSuggesters
instance GHC.Read.Read Network.AWS.CloudSearch.BuildSuggesters.BuildSuggesters
instance GHC.Classes.Eq Network.AWS.CloudSearch.BuildSuggesters.BuildSuggesters
instance Network.AWS.Types.AWSRequest Network.AWS.CloudSearch.BuildSuggesters.BuildSuggesters
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.BuildSuggesters.BuildSuggestersResponse
instance Data.Hashable.Class.Hashable Network.AWS.CloudSearch.BuildSuggesters.BuildSuggesters
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.BuildSuggesters.BuildSuggesters
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudSearch.BuildSuggesters.BuildSuggesters
instance Network.AWS.Data.Path.ToPath Network.AWS.CloudSearch.BuildSuggesters.BuildSuggesters
instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudSearch.BuildSuggesters.BuildSuggesters


-- | Configures the availability options for a domain. Enabling the
--   Multi-AZ option expands an Amazon CloudSearch domain to an additional
--   Availability Zone in the same Region to increase fault tolerance in
--   the event of a service disruption. Changes to the Multi-AZ option can
--   take about half an hour to become active. For more information, see
--   <a>Configuring Availability Options</a> in the <i>Amazon CloudSearch
--   Developer Guide</i> .
module Network.AWS.CloudSearch.UpdateAvailabilityOptions

-- | Creates a value of <a>UpdateAvailabilityOptions</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>uaoDomainName</a> - Undocumented member.</li>
--   <li><a>uaoMultiAZ</a> - You expand an existing search domain to a
--   second Availability Zone by setting the Multi-AZ option to true.
--   Similarly, you can turn off the Multi-AZ option to downgrade the
--   domain to a single Availability Zone by setting the Multi-AZ option to
--   <tt>false</tt> .</li>
--   </ul>
updateAvailabilityOptions :: Text -> Bool -> UpdateAvailabilityOptions

-- | Container for the parameters to the
--   <tt><a>UpdateAvailabilityOptions</a> </tt> operation. Specifies the
--   name of the domain you want to update and the Multi-AZ availability
--   option.
--   
--   <i>See:</i> <a>updateAvailabilityOptions</a> smart constructor.
data UpdateAvailabilityOptions

-- | Undocumented member.
uaoDomainName :: Lens' UpdateAvailabilityOptions Text

-- | You expand an existing search domain to a second Availability Zone by
--   setting the Multi-AZ option to true. Similarly, you can turn off the
--   Multi-AZ option to downgrade the domain to a single Availability Zone
--   by setting the Multi-AZ option to <tt>false</tt> .
uaoMultiAZ :: Lens' UpdateAvailabilityOptions Bool

-- | Creates a value of <a>UpdateAvailabilityOptionsResponse</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>uaorsAvailabilityOptions</a> - The newly-configured
--   availability options. Indicates whether Multi-AZ is enabled for the
--   domain.</li>
--   <li><a>uaorsResponseStatus</a> - -- | The response status code.</li>
--   </ul>
updateAvailabilityOptionsResponse :: Int -> UpdateAvailabilityOptionsResponse

-- | The result of a <tt>UpdateAvailabilityOptions</tt> request. Contains
--   the status of the domain's availability options.
--   
--   <i>See:</i> <a>updateAvailabilityOptionsResponse</a> smart
--   constructor.
data UpdateAvailabilityOptionsResponse

-- | The newly-configured availability options. Indicates whether Multi-AZ
--   is enabled for the domain.
uaorsAvailabilityOptions :: Lens' UpdateAvailabilityOptionsResponse (Maybe AvailabilityOptionsStatus)

-- | <ul>
--   <li>- | The response status code.</li>
--   </ul>
uaorsResponseStatus :: Lens' UpdateAvailabilityOptionsResponse Int
instance GHC.Generics.Generic Network.AWS.CloudSearch.UpdateAvailabilityOptions.UpdateAvailabilityOptionsResponse
instance Data.Data.Data Network.AWS.CloudSearch.UpdateAvailabilityOptions.UpdateAvailabilityOptionsResponse
instance GHC.Show.Show Network.AWS.CloudSearch.UpdateAvailabilityOptions.UpdateAvailabilityOptionsResponse
instance GHC.Read.Read Network.AWS.CloudSearch.UpdateAvailabilityOptions.UpdateAvailabilityOptionsResponse
instance GHC.Classes.Eq Network.AWS.CloudSearch.UpdateAvailabilityOptions.UpdateAvailabilityOptionsResponse
instance GHC.Generics.Generic Network.AWS.CloudSearch.UpdateAvailabilityOptions.UpdateAvailabilityOptions
instance Data.Data.Data Network.AWS.CloudSearch.UpdateAvailabilityOptions.UpdateAvailabilityOptions
instance GHC.Show.Show Network.AWS.CloudSearch.UpdateAvailabilityOptions.UpdateAvailabilityOptions
instance GHC.Read.Read Network.AWS.CloudSearch.UpdateAvailabilityOptions.UpdateAvailabilityOptions
instance GHC.Classes.Eq Network.AWS.CloudSearch.UpdateAvailabilityOptions.UpdateAvailabilityOptions
instance Network.AWS.Types.AWSRequest Network.AWS.CloudSearch.UpdateAvailabilityOptions.UpdateAvailabilityOptions
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.UpdateAvailabilityOptions.UpdateAvailabilityOptionsResponse
instance Data.Hashable.Class.Hashable Network.AWS.CloudSearch.UpdateAvailabilityOptions.UpdateAvailabilityOptions
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.UpdateAvailabilityOptions.UpdateAvailabilityOptions
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudSearch.UpdateAvailabilityOptions.UpdateAvailabilityOptions
instance Network.AWS.Data.Path.ToPath Network.AWS.CloudSearch.UpdateAvailabilityOptions.UpdateAvailabilityOptions
instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudSearch.UpdateAvailabilityOptions.UpdateAvailabilityOptions


-- | Configures scaling parameters for a domain. A domain's scaling
--   parameters specify the desired search instance type and replication
--   count. Amazon CloudSearch will still automatically scale your domain
--   based on the volume of data and traffic, but not below the desired
--   instance type and replication count. If the Multi-AZ option is
--   enabled, these values control the resources used per Availability
--   Zone. For more information, see <a>Configuring Scaling Options</a> in
--   the <i>Amazon CloudSearch Developer Guide</i> .
module Network.AWS.CloudSearch.UpdateScalingParameters

-- | Creates a value of <a>UpdateScalingParameters</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>uspDomainName</a> - Undocumented member.</li>
--   <li><a>uspScalingParameters</a> - Undocumented member.</li>
--   </ul>
updateScalingParameters :: Text -> ScalingParameters -> UpdateScalingParameters

-- | Container for the parameters to the <tt><a>UpdateScalingParameters</a>
--   </tt> operation. Specifies the name of the domain you want to update
--   and the scaling parameters you want to configure.
--   
--   <i>See:</i> <a>updateScalingParameters</a> smart constructor.
data UpdateScalingParameters

-- | Undocumented member.
uspDomainName :: Lens' UpdateScalingParameters Text

-- | Undocumented member.
uspScalingParameters :: Lens' UpdateScalingParameters ScalingParameters

-- | Creates a value of <a>UpdateScalingParametersResponse</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>usprsResponseStatus</a> - -- | The response status code.</li>
--   <li><a>usprsScalingParameters</a> - Undocumented member.</li>
--   </ul>
updateScalingParametersResponse :: Int -> ScalingParametersStatus -> UpdateScalingParametersResponse

-- | The result of a <tt>UpdateScalingParameters</tt> request. Contains the
--   status of the newly-configured scaling parameters.
--   
--   <i>See:</i> <a>updateScalingParametersResponse</a> smart constructor.
data UpdateScalingParametersResponse

-- | <ul>
--   <li>- | The response status code.</li>
--   </ul>
usprsResponseStatus :: Lens' UpdateScalingParametersResponse Int

-- | Undocumented member.
usprsScalingParameters :: Lens' UpdateScalingParametersResponse ScalingParametersStatus
instance GHC.Generics.Generic Network.AWS.CloudSearch.UpdateScalingParameters.UpdateScalingParametersResponse
instance Data.Data.Data Network.AWS.CloudSearch.UpdateScalingParameters.UpdateScalingParametersResponse
instance GHC.Show.Show Network.AWS.CloudSearch.UpdateScalingParameters.UpdateScalingParametersResponse
instance GHC.Read.Read Network.AWS.CloudSearch.UpdateScalingParameters.UpdateScalingParametersResponse
instance GHC.Classes.Eq Network.AWS.CloudSearch.UpdateScalingParameters.UpdateScalingParametersResponse
instance GHC.Generics.Generic Network.AWS.CloudSearch.UpdateScalingParameters.UpdateScalingParameters
instance Data.Data.Data Network.AWS.CloudSearch.UpdateScalingParameters.UpdateScalingParameters
instance GHC.Show.Show Network.AWS.CloudSearch.UpdateScalingParameters.UpdateScalingParameters
instance GHC.Read.Read Network.AWS.CloudSearch.UpdateScalingParameters.UpdateScalingParameters
instance GHC.Classes.Eq Network.AWS.CloudSearch.UpdateScalingParameters.UpdateScalingParameters
instance Network.AWS.Types.AWSRequest Network.AWS.CloudSearch.UpdateScalingParameters.UpdateScalingParameters
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.UpdateScalingParameters.UpdateScalingParametersResponse
instance Data.Hashable.Class.Hashable Network.AWS.CloudSearch.UpdateScalingParameters.UpdateScalingParameters
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.UpdateScalingParameters.UpdateScalingParameters
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudSearch.UpdateScalingParameters.UpdateScalingParameters
instance Network.AWS.Data.Path.ToPath Network.AWS.CloudSearch.UpdateScalingParameters.UpdateScalingParameters
instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudSearch.UpdateScalingParameters.UpdateScalingParameters


-- | Configures the access rules that control access to the domain's
--   document and search endpoints. For more information, see
--   <a>Configuring Access for an Amazon CloudSearch Domain</a> .
module Network.AWS.CloudSearch.UpdateServiceAccessPolicies

-- | Creates a value of <a>UpdateServiceAccessPolicies</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>usapDomainName</a> - Undocumented member.</li>
--   <li><a>usapAccessPolicies</a> - The access rules you want to
--   configure. These rules replace any existing rules.</li>
--   </ul>
updateServiceAccessPolicies :: Text -> Text -> UpdateServiceAccessPolicies

-- | Container for the parameters to the
--   <tt><a>UpdateServiceAccessPolicies</a> </tt> operation. Specifies the
--   name of the domain you want to update and the access rules you want to
--   configure.
--   
--   <i>See:</i> <a>updateServiceAccessPolicies</a> smart constructor.
data UpdateServiceAccessPolicies

-- | Undocumented member.
usapDomainName :: Lens' UpdateServiceAccessPolicies Text

-- | The access rules you want to configure. These rules replace any
--   existing rules.
usapAccessPolicies :: Lens' UpdateServiceAccessPolicies Text

-- | Creates a value of <a>UpdateServiceAccessPoliciesResponse</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>usaprsResponseStatus</a> - -- | The response status code.</li>
--   <li><a>usaprsAccessPolicies</a> - The access rules configured for the
--   domain.</li>
--   </ul>
updateServiceAccessPoliciesResponse :: Int -> AccessPoliciesStatus -> UpdateServiceAccessPoliciesResponse

-- | The result of an <tt>UpdateServiceAccessPolicies</tt> request.
--   Contains the new access policies.
--   
--   <i>See:</i> <a>updateServiceAccessPoliciesResponse</a> smart
--   constructor.
data UpdateServiceAccessPoliciesResponse

-- | <ul>
--   <li>- | The response status code.</li>
--   </ul>
usaprsResponseStatus :: Lens' UpdateServiceAccessPoliciesResponse Int

-- | The access rules configured for the domain.
usaprsAccessPolicies :: Lens' UpdateServiceAccessPoliciesResponse AccessPoliciesStatus
instance GHC.Generics.Generic Network.AWS.CloudSearch.UpdateServiceAccessPolicies.UpdateServiceAccessPoliciesResponse
instance Data.Data.Data Network.AWS.CloudSearch.UpdateServiceAccessPolicies.UpdateServiceAccessPoliciesResponse
instance GHC.Show.Show Network.AWS.CloudSearch.UpdateServiceAccessPolicies.UpdateServiceAccessPoliciesResponse
instance GHC.Read.Read Network.AWS.CloudSearch.UpdateServiceAccessPolicies.UpdateServiceAccessPoliciesResponse
instance GHC.Classes.Eq Network.AWS.CloudSearch.UpdateServiceAccessPolicies.UpdateServiceAccessPoliciesResponse
instance GHC.Generics.Generic Network.AWS.CloudSearch.UpdateServiceAccessPolicies.UpdateServiceAccessPolicies
instance Data.Data.Data Network.AWS.CloudSearch.UpdateServiceAccessPolicies.UpdateServiceAccessPolicies
instance GHC.Show.Show Network.AWS.CloudSearch.UpdateServiceAccessPolicies.UpdateServiceAccessPolicies
instance GHC.Read.Read Network.AWS.CloudSearch.UpdateServiceAccessPolicies.UpdateServiceAccessPolicies
instance GHC.Classes.Eq Network.AWS.CloudSearch.UpdateServiceAccessPolicies.UpdateServiceAccessPolicies
instance Network.AWS.Types.AWSRequest Network.AWS.CloudSearch.UpdateServiceAccessPolicies.UpdateServiceAccessPolicies
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.UpdateServiceAccessPolicies.UpdateServiceAccessPoliciesResponse
instance Data.Hashable.Class.Hashable Network.AWS.CloudSearch.UpdateServiceAccessPolicies.UpdateServiceAccessPolicies
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.UpdateServiceAccessPolicies.UpdateServiceAccessPolicies
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CloudSearch.UpdateServiceAccessPolicies.UpdateServiceAccessPolicies
instance Network.AWS.Data.Path.ToPath Network.AWS.CloudSearch.UpdateServiceAccessPolicies.UpdateServiceAccessPolicies
instance Network.AWS.Data.Query.ToQuery Network.AWS.CloudSearch.UpdateServiceAccessPolicies.UpdateServiceAccessPolicies


module Network.AWS.CloudSearch.Waiters


-- | <b>Amazon CloudSearch Configuration Service</b>
--   
--   You use the Amazon CloudSearch configuration service to create,
--   configure, and manage search domains. Configuration service requests
--   are submitted using the AWS Query protocol. AWS Query requests are
--   HTTP or HTTPS requests submitted via HTTP GET or POST with a query
--   parameter named Action.
--   
--   The endpoint for configuration service requests is region-specific:
--   cloudsearch.<i>region</i> .amazonaws.com. For example,
--   cloudsearch.us-east-1.amazonaws.com. For a current list of supported
--   regions and endpoints, see <a>Regions and Endpoints</a> .
module Network.AWS.CloudSearch

-- | API version <tt>2013-01-01</tt> of the Amazon CloudSearch SDK
--   configuration.
cloudSearch :: Service

-- | An error occurred while processing the request.
_BaseException :: AsError a => Getting (First ServiceError) a ServiceError

-- | The request was rejected because it attempted an operation which is
--   not enabled.
_DisabledOperationException :: AsError a => Getting (First ServiceError) a ServiceError

-- | An internal error occurred while processing the request. If this
--   problem persists, report an issue from the <a>Service Health
--   Dashboard</a> .
_InternalException :: AsError a => Getting (First ServiceError) a ServiceError

-- | The request was rejected because it specified an invalid type
--   definition.
_InvalidTypeException :: AsError a => Getting (First ServiceError) a ServiceError

-- | The request was rejected because it attempted to reference a resource
--   that does not exist.
_ResourceNotFoundException :: AsError a => Getting (First ServiceError) a ServiceError

-- | The request was rejected because a resource limit has already been
--   met.
_LimitExceededException :: AsError a => Getting (First ServiceError) a ServiceError
data AlgorithmicStemming
ASFull :: AlgorithmicStemming
ASLight :: AlgorithmicStemming
ASMinimal :: AlgorithmicStemming
ASNone :: AlgorithmicStemming

-- | An <a>IETF RFC 4646</a> language code or <tt>mul</tt> for multiple
--   languages.
data AnalysisSchemeLanguage
AR :: AnalysisSchemeLanguage
BG :: AnalysisSchemeLanguage
CA :: AnalysisSchemeLanguage
CS :: AnalysisSchemeLanguage
DA :: AnalysisSchemeLanguage
DE :: AnalysisSchemeLanguage
EL :: AnalysisSchemeLanguage
EN :: AnalysisSchemeLanguage
ES :: AnalysisSchemeLanguage
EU :: AnalysisSchemeLanguage
FA :: AnalysisSchemeLanguage
FI :: AnalysisSchemeLanguage
FR :: AnalysisSchemeLanguage
GA :: AnalysisSchemeLanguage
GL :: AnalysisSchemeLanguage
HE :: AnalysisSchemeLanguage
HI :: AnalysisSchemeLanguage
HU :: AnalysisSchemeLanguage
HY :: AnalysisSchemeLanguage
IT :: AnalysisSchemeLanguage
Id :: AnalysisSchemeLanguage
JA :: AnalysisSchemeLanguage
KO :: AnalysisSchemeLanguage
LV :: AnalysisSchemeLanguage
Mul :: AnalysisSchemeLanguage
NL :: AnalysisSchemeLanguage
NO :: AnalysisSchemeLanguage
PT :: AnalysisSchemeLanguage
RO :: AnalysisSchemeLanguage
RU :: AnalysisSchemeLanguage
SV :: AnalysisSchemeLanguage
TH :: AnalysisSchemeLanguage
TR :: AnalysisSchemeLanguage
ZhHans :: AnalysisSchemeLanguage
ZhHant :: AnalysisSchemeLanguage

-- | The type of field. The valid options for a field depend on the field
--   type. For more information about the supported field types, see
--   <a>Configuring Index Fields</a> in the <i>Amazon CloudSearch Developer
--   Guide</i> .
data IndexFieldType
Date :: IndexFieldType
DateArray :: IndexFieldType
Double :: IndexFieldType
DoubleArray :: IndexFieldType
Int :: IndexFieldType
IntArray :: IndexFieldType
Latlon :: IndexFieldType
Literal :: IndexFieldType
LiteralArray :: IndexFieldType
Text :: IndexFieldType
TextArray :: IndexFieldType

-- | The state of processing a change to an option. One of:
--   
--   <ul>
--   <li>RequiresIndexDocuments: The option's latest value will not be
--   deployed until <tt>IndexDocuments</tt> has been called and indexing is
--   complete. * Processing: The option's latest value is in the process of
--   being activated. * Active: The option's latest value is fully
--   deployed. * FailedToValidate: The option value is not compatible with
--   the domain's data and cannot be used to index the data. You must
--   either modify the option value or update or remove the incompatible
--   documents.</li>
--   </ul>
data OptionState
Active :: OptionState
FailedToValidate :: OptionState
Processing :: OptionState
RequiresIndexDocuments :: OptionState

-- | The instance type (such as <tt>search.m1.small</tt> ) on which an
--   index partition is hosted.
data PartitionInstanceType
Search_M1_Large :: PartitionInstanceType
Search_M1_Small :: PartitionInstanceType
Search_M2_2XLarge :: PartitionInstanceType
Search_M2_XLarge :: PartitionInstanceType
Search_M3_2XLarge :: PartitionInstanceType
Search_M3_Large :: PartitionInstanceType
Search_M3_Medium :: PartitionInstanceType
Search_M3_XLarge :: PartitionInstanceType
data SuggesterFuzzyMatching
High :: SuggesterFuzzyMatching
Low :: SuggesterFuzzyMatching
None :: SuggesterFuzzyMatching

-- | The configured access rules for the domain's document and search
--   endpoints, and the current status of those rules.
--   
--   <i>See:</i> <a>accessPoliciesStatus</a> smart constructor.
data AccessPoliciesStatus

-- | Creates a value of <a>AccessPoliciesStatus</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>apsOptions</a> - Undocumented member.</li>
--   <li><a>apsStatus</a> - Undocumented member.</li>
--   </ul>
accessPoliciesStatus :: Text -> OptionStatus -> AccessPoliciesStatus

-- | Undocumented member.
apsOptions :: Lens' AccessPoliciesStatus Text

-- | Undocumented member.
apsStatus :: Lens' AccessPoliciesStatus OptionStatus

-- | Synonyms, stopwords, and stemming options for an analysis scheme.
--   Includes tokenization dictionary for Japanese.
--   
--   <i>See:</i> <a>analysisOptions</a> smart constructor.
data AnalysisOptions

-- | Creates a value of <a>AnalysisOptions</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>aoAlgorithmicStemming</a> - The level of algorithmic stemming
--   to perform: <tt>none</tt> , <tt>minimal</tt> , <tt>light</tt> , or
--   <tt>full</tt> . The available levels vary depending on the language.
--   For more information, see <a>Language Specific Text Processing
--   Settings</a> in the <i>Amazon CloudSearch Developer Guide</i></li>
--   <li><a>aoStopwords</a> - A JSON array of terms to ignore during
--   indexing and searching. For example, <tt>["a", "an", "the", "of"]</tt>
--   . The stopwords dictionary must explicitly list each word you want to
--   ignore. Wildcards and regular expressions are not supported.</li>
--   <li><a>aoJapaneseTokenizationDictionary</a> - A JSON array that
--   contains a collection of terms, tokens, readings and part of speech
--   for Japanese Tokenizaiton. The Japanese tokenization dictionary
--   enables you to override the default tokenization for selected terms.
--   This is only valid for Japanese language fields.</li>
--   <li><a>aoSynonyms</a> - A JSON object that defines synonym groups and
--   aliases. A synonym group is an array of arrays, where each sub-array
--   is a group of terms where each term in the group is considered a
--   synonym of every other term in the group. The aliases value is an
--   object that contains a collection of string:value pairs where the
--   string specifies a term and the array of values specifies each of the
--   aliases for that term. An alias is considered a synonym of the
--   specified term, but the term is not considered a synonym of the alias.
--   For more information about specifying synonyms, see <a>Synonyms</a> in
--   the <i>Amazon CloudSearch Developer Guide</i> .</li>
--   <li><a>aoStemmingDictionary</a> - A JSON object that contains a
--   collection of string:value pairs that each map a term to its stem. For
--   example, <tt>{"term1": "stem1", "term2": "stem2", "term3":
--   "stem3"}</tt> . The stemming dictionary is applied in addition to any
--   algorithmic stemming. This enables you to override the results of the
--   algorithmic stemming to correct specific cases of overstemming or
--   understemming. The maximum size of a stemming dictionary is 500
--   KB.</li>
--   </ul>
analysisOptions :: AnalysisOptions

-- | The level of algorithmic stemming to perform: <tt>none</tt> ,
--   <tt>minimal</tt> , <tt>light</tt> , or <tt>full</tt> . The available
--   levels vary depending on the language. For more information, see
--   <a>Language Specific Text Processing Settings</a> in the <i>Amazon
--   CloudSearch Developer Guide</i>
aoAlgorithmicStemming :: Lens' AnalysisOptions (Maybe AlgorithmicStemming)

-- | A JSON array of terms to ignore during indexing and searching. For
--   example, <tt>["a", "an", "the", "of"]</tt> . The stopwords dictionary
--   must explicitly list each word you want to ignore. Wildcards and
--   regular expressions are not supported.
aoStopwords :: Lens' AnalysisOptions (Maybe Text)

-- | A JSON array that contains a collection of terms, tokens, readings and
--   part of speech for Japanese Tokenizaiton. The Japanese tokenization
--   dictionary enables you to override the default tokenization for
--   selected terms. This is only valid for Japanese language fields.
aoJapaneseTokenizationDictionary :: Lens' AnalysisOptions (Maybe Text)

-- | A JSON object that defines synonym groups and aliases. A synonym group
--   is an array of arrays, where each sub-array is a group of terms where
--   each term in the group is considered a synonym of every other term in
--   the group. The aliases value is an object that contains a collection
--   of string:value pairs where the string specifies a term and the array
--   of values specifies each of the aliases for that term. An alias is
--   considered a synonym of the specified term, but the term is not
--   considered a synonym of the alias. For more information about
--   specifying synonyms, see <a>Synonyms</a> in the <i>Amazon CloudSearch
--   Developer Guide</i> .
aoSynonyms :: Lens' AnalysisOptions (Maybe Text)

-- | A JSON object that contains a collection of string:value pairs that
--   each map a term to its stem. For example, <tt>{"term1": "stem1",
--   "term2": "stem2", "term3": "stem3"}</tt> . The stemming dictionary is
--   applied in addition to any algorithmic stemming. This enables you to
--   override the results of the algorithmic stemming to correct specific
--   cases of overstemming or understemming. The maximum size of a stemming
--   dictionary is 500 KB.
aoStemmingDictionary :: Lens' AnalysisOptions (Maybe Text)

-- | Configuration information for an analysis scheme. Each analysis scheme
--   has a unique name and specifies the language of the text to be
--   processed. The following options can be configured for an analysis
--   scheme: <tt>Synonyms</tt> , <tt>Stopwords</tt> ,
--   <tt>StemmingDictionary</tt> , <tt>JapaneseTokenizationDictionary</tt>
--   and <tt>AlgorithmicStemming</tt> .
--   
--   <i>See:</i> <a>analysisScheme</a> smart constructor.
data AnalysisScheme

-- | Creates a value of <a>AnalysisScheme</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>asAnalysisOptions</a> - Undocumented member.</li>
--   <li><a>asAnalysisSchemeName</a> - Undocumented member.</li>
--   <li><a>asAnalysisSchemeLanguage</a> - Undocumented member.</li>
--   </ul>
analysisScheme :: Text -> AnalysisSchemeLanguage -> AnalysisScheme

-- | Undocumented member.
asAnalysisOptions :: Lens' AnalysisScheme (Maybe AnalysisOptions)

-- | Undocumented member.
asAnalysisSchemeName :: Lens' AnalysisScheme Text

-- | Undocumented member.
asAnalysisSchemeLanguage :: Lens' AnalysisScheme AnalysisSchemeLanguage

-- | The status and configuration of an <tt>AnalysisScheme</tt> .
--   
--   <i>See:</i> <a>analysisSchemeStatus</a> smart constructor.
data AnalysisSchemeStatus

-- | Creates a value of <a>AnalysisSchemeStatus</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>assOptions</a> - Undocumented member.</li>
--   <li><a>assStatus</a> - Undocumented member.</li>
--   </ul>
analysisSchemeStatus :: AnalysisScheme -> OptionStatus -> AnalysisSchemeStatus

-- | Undocumented member.
assOptions :: Lens' AnalysisSchemeStatus AnalysisScheme

-- | Undocumented member.
assStatus :: Lens' AnalysisSchemeStatus OptionStatus

-- | The status and configuration of the domain's availability options.
--   
--   <i>See:</i> <a>availabilityOptionsStatus</a> smart constructor.
data AvailabilityOptionsStatus

-- | Creates a value of <a>AvailabilityOptionsStatus</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>aosOptions</a> - The availability options configured for the
--   domain.</li>
--   <li><a>aosStatus</a> - Undocumented member.</li>
--   </ul>
availabilityOptionsStatus :: Bool -> OptionStatus -> AvailabilityOptionsStatus

-- | The availability options configured for the domain.
aosOptions :: Lens' AvailabilityOptionsStatus Bool

-- | Undocumented member.
aosStatus :: Lens' AvailabilityOptionsStatus OptionStatus

-- | Options for a field that contains an array of dates. Present if
--   <tt>IndexFieldType</tt> specifies the field is of type
--   <tt>date-array</tt> . All options are enabled by default.
--   
--   <i>See:</i> <a>dateArrayOptions</a> smart constructor.
data DateArrayOptions

-- | Creates a value of <a>DateArrayOptions</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>daosSourceFields</a> - A list of source fields to map to the
--   field.</li>
--   <li><a>daosReturnEnabled</a> - Whether the contents of the field can
--   be returned in the search results.</li>
--   <li><a>daosFacetEnabled</a> - Whether facet information can be
--   returned for the field.</li>
--   <li><a>daosSearchEnabled</a> - Whether the contents of the field are
--   searchable.</li>
--   <li><a>daosDefaultValue</a> - A value to use for the field if the
--   field isn't specified for a document.</li>
--   </ul>
dateArrayOptions :: DateArrayOptions

-- | A list of source fields to map to the field.
daosSourceFields :: Lens' DateArrayOptions (Maybe Text)

-- | Whether the contents of the field can be returned in the search
--   results.
daosReturnEnabled :: Lens' DateArrayOptions (Maybe Bool)

-- | Whether facet information can be returned for the field.
daosFacetEnabled :: Lens' DateArrayOptions (Maybe Bool)

-- | Whether the contents of the field are searchable.
daosSearchEnabled :: Lens' DateArrayOptions (Maybe Bool)

-- | A value to use for the field if the field isn't specified for a
--   document.
daosDefaultValue :: Lens' DateArrayOptions (Maybe Text)

-- | Options for a date field. Dates and times are specified in UTC
--   (Coordinated Universal Time) according to IETF RFC3339:
--   yyyy-mm-ddT00:00:00Z. Present if <tt>IndexFieldType</tt> specifies the
--   field is of type <tt>date</tt> . All options are enabled by default.
--   
--   <i>See:</i> <a>dateOptions</a> smart constructor.
data DateOptions

-- | Creates a value of <a>DateOptions</a> with the minimum fields required
--   to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>doSourceField</a> - Undocumented member.</li>
--   <li><a>doReturnEnabled</a> - Whether the contents of the field can be
--   returned in the search results.</li>
--   <li><a>doFacetEnabled</a> - Whether facet information can be returned
--   for the field.</li>
--   <li><a>doSearchEnabled</a> - Whether the contents of the field are
--   searchable.</li>
--   <li><a>doSortEnabled</a> - Whether the field can be used to sort the
--   search results.</li>
--   <li><a>doDefaultValue</a> - A value to use for the field if the field
--   isn't specified for a document.</li>
--   </ul>
dateOptions :: DateOptions

-- | Undocumented member.
doSourceField :: Lens' DateOptions (Maybe Text)

-- | Whether the contents of the field can be returned in the search
--   results.
doReturnEnabled :: Lens' DateOptions (Maybe Bool)

-- | Whether facet information can be returned for the field.
doFacetEnabled :: Lens' DateOptions (Maybe Bool)

-- | Whether the contents of the field are searchable.
doSearchEnabled :: Lens' DateOptions (Maybe Bool)

-- | Whether the field can be used to sort the search results.
doSortEnabled :: Lens' DateOptions (Maybe Bool)

-- | A value to use for the field if the field isn't specified for a
--   document.
doDefaultValue :: Lens' DateOptions (Maybe Text)

-- | Options for a search suggester.
--   
--   <i>See:</i> <a>documentSuggesterOptions</a> smart constructor.
data DocumentSuggesterOptions

-- | Creates a value of <a>DocumentSuggesterOptions</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>dsoSortExpression</a> - An expression that computes a score for
--   each suggestion to control how they are sorted. The scores are rounded
--   to the nearest integer, with a floor of 0 and a ceiling of 2^31-1. A
--   document's relevance score is not computed for suggestions, so sort
--   expressions cannot reference the <tt>_score</tt> value. To sort
--   suggestions using a numeric field or existing expression, simply
--   specify the name of the field or expression. If no expression is
--   configured for the suggester, the suggestions are sorted with the
--   closest matches listed first.</li>
--   <li><a>dsoFuzzyMatching</a> - The level of fuzziness allowed when
--   suggesting matches for a string: <tt>none</tt> , <tt>low</tt> , or
--   <tt>high</tt> . With none, the specified string is treated as an exact
--   prefix. With low, suggestions must differ from the specified string by
--   no more than one character. With high, suggestions can differ by up to
--   two characters. The default is none.</li>
--   <li><a>dsoSourceField</a> - The name of the index field you want to
--   use for suggestions.</li>
--   </ul>
documentSuggesterOptions :: Text -> DocumentSuggesterOptions

-- | An expression that computes a score for each suggestion to control how
--   they are sorted. The scores are rounded to the nearest integer, with a
--   floor of 0 and a ceiling of 2^31-1. A document's relevance score is
--   not computed for suggestions, so sort expressions cannot reference the
--   <tt>_score</tt> value. To sort suggestions using a numeric field or
--   existing expression, simply specify the name of the field or
--   expression. If no expression is configured for the suggester, the
--   suggestions are sorted with the closest matches listed first.
dsoSortExpression :: Lens' DocumentSuggesterOptions (Maybe Text)

-- | The level of fuzziness allowed when suggesting matches for a string:
--   <tt>none</tt> , <tt>low</tt> , or <tt>high</tt> . With none, the
--   specified string is treated as an exact prefix. With low, suggestions
--   must differ from the specified string by no more than one character.
--   With high, suggestions can differ by up to two characters. The default
--   is none.
dsoFuzzyMatching :: Lens' DocumentSuggesterOptions (Maybe SuggesterFuzzyMatching)

-- | The name of the index field you want to use for suggestions.
dsoSourceField :: Lens' DocumentSuggesterOptions Text

-- | The current status of the search domain.
--   
--   <i>See:</i> <a>domainStatus</a> smart constructor.
data DomainStatus

-- | Creates a value of <a>DomainStatus</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>dsSearchInstanceCount</a> - The number of search instances that
--   are available to process search requests.</li>
--   <li><a>dsSearchInstanceType</a> - The instance type that is being used
--   to process search requests.</li>
--   <li><a>dsDocService</a> - The service endpoint for updating documents
--   in a search domain.</li>
--   <li><a>dsARN</a> - Undocumented member.</li>
--   <li><a>dsCreated</a> - True if the search domain is created. It can
--   take several minutes to initialize a domain when <tt>CreateDomain</tt>
--   is called. Newly created search domains are returned from
--   <tt>DescribeDomains</tt> with a false value for Created until domain
--   creation is complete.</li>
--   <li><a>dsSearchService</a> - The service endpoint for requesting
--   search results from a search domain.</li>
--   <li><a>dsLimits</a> - Undocumented member.</li>
--   <li><a>dsSearchPartitionCount</a> - The number of partitions across
--   which the search index is spread.</li>
--   <li><a>dsDeleted</a> - True if the search domain has been deleted. The
--   system must clean up resources dedicated to the search domain when
--   <tt>DeleteDomain</tt> is called. Newly deleted search domains are
--   returned from <tt>DescribeDomains</tt> with a true value for IsDeleted
--   for several minutes until resource cleanup is complete.</li>
--   <li><a>dsProcessing</a> - True if processing is being done to activate
--   the current domain configuration.</li>
--   <li><a>dsDomainId</a> - Undocumented member.</li>
--   <li><a>dsDomainName</a> - Undocumented member.</li>
--   <li><a>dsRequiresIndexDocuments</a> - True if <tt>IndexDocuments</tt>
--   needs to be called to activate the current domain configuration.</li>
--   </ul>
domainStatus :: Text -> Text -> Bool -> DomainStatus

-- | The number of search instances that are available to process search
--   requests.
dsSearchInstanceCount :: Lens' DomainStatus (Maybe Natural)

-- | The instance type that is being used to process search requests.
dsSearchInstanceType :: Lens' DomainStatus (Maybe Text)

-- | The service endpoint for updating documents in a search domain.
dsDocService :: Lens' DomainStatus (Maybe ServiceEndpoint)

-- | Undocumented member.
dsARN :: Lens' DomainStatus (Maybe Text)

-- | True if the search domain is created. It can take several minutes to
--   initialize a domain when <tt>CreateDomain</tt> is called. Newly
--   created search domains are returned from <tt>DescribeDomains</tt> with
--   a false value for Created until domain creation is complete.
dsCreated :: Lens' DomainStatus (Maybe Bool)

-- | The service endpoint for requesting search results from a search
--   domain.
dsSearchService :: Lens' DomainStatus (Maybe ServiceEndpoint)

-- | Undocumented member.
dsLimits :: Lens' DomainStatus (Maybe Limits)

-- | The number of partitions across which the search index is spread.
dsSearchPartitionCount :: Lens' DomainStatus (Maybe Natural)

-- | True if the search domain has been deleted. The system must clean up
--   resources dedicated to the search domain when <tt>DeleteDomain</tt> is
--   called. Newly deleted search domains are returned from
--   <tt>DescribeDomains</tt> with a true value for IsDeleted for several
--   minutes until resource cleanup is complete.
dsDeleted :: Lens' DomainStatus (Maybe Bool)

-- | True if processing is being done to activate the current domain
--   configuration.
dsProcessing :: Lens' DomainStatus (Maybe Bool)

-- | Undocumented member.
dsDomainId :: Lens' DomainStatus Text

-- | Undocumented member.
dsDomainName :: Lens' DomainStatus Text

-- | True if <tt>IndexDocuments</tt> needs to be called to activate the
--   current domain configuration.
dsRequiresIndexDocuments :: Lens' DomainStatus Bool

-- | Options for a field that contains an array of double-precision 64-bit
--   floating point values. Present if <tt>IndexFieldType</tt> specifies
--   the field is of type <tt>double-array</tt> . All options are enabled
--   by default.
--   
--   <i>See:</i> <a>doubleArrayOptions</a> smart constructor.
data DoubleArrayOptions

-- | Creates a value of <a>DoubleArrayOptions</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>daoSourceFields</a> - A list of source fields to map to the
--   field.</li>
--   <li><a>daoReturnEnabled</a> - Whether the contents of the field can be
--   returned in the search results.</li>
--   <li><a>daoFacetEnabled</a> - Whether facet information can be returned
--   for the field.</li>
--   <li><a>daoSearchEnabled</a> - Whether the contents of the field are
--   searchable.</li>
--   <li><a>daoDefaultValue</a> - A value to use for the field if the field
--   isn't specified for a document.</li>
--   </ul>
doubleArrayOptions :: DoubleArrayOptions

-- | A list of source fields to map to the field.
daoSourceFields :: Lens' DoubleArrayOptions (Maybe Text)

-- | Whether the contents of the field can be returned in the search
--   results.
daoReturnEnabled :: Lens' DoubleArrayOptions (Maybe Bool)

-- | Whether facet information can be returned for the field.
daoFacetEnabled :: Lens' DoubleArrayOptions (Maybe Bool)

-- | Whether the contents of the field are searchable.
daoSearchEnabled :: Lens' DoubleArrayOptions (Maybe Bool)

-- | A value to use for the field if the field isn't specified for a
--   document.
daoDefaultValue :: Lens' DoubleArrayOptions (Maybe Double)

-- | Options for a double-precision 64-bit floating point field. Present if
--   <tt>IndexFieldType</tt> specifies the field is of type <tt>double</tt>
--   . All options are enabled by default.
--   
--   <i>See:</i> <a>doubleOptions</a> smart constructor.
data DoubleOptions

-- | Creates a value of <a>DoubleOptions</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>dSourceField</a> - The name of the source field to map to the
--   field.</li>
--   <li><a>dReturnEnabled</a> - Whether the contents of the field can be
--   returned in the search results.</li>
--   <li><a>dFacetEnabled</a> - Whether facet information can be returned
--   for the field.</li>
--   <li><a>dSearchEnabled</a> - Whether the contents of the field are
--   searchable.</li>
--   <li><a>dSortEnabled</a> - Whether the field can be used to sort the
--   search results.</li>
--   <li><a>dDefaultValue</a> - A value to use for the field if the field
--   isn't specified for a document. This can be important if you are using
--   the field in an expression and that field is not present in every
--   document.</li>
--   </ul>
doubleOptions :: DoubleOptions

-- | The name of the source field to map to the field.
dSourceField :: Lens' DoubleOptions (Maybe Text)

-- | Whether the contents of the field can be returned in the search
--   results.
dReturnEnabled :: Lens' DoubleOptions (Maybe Bool)

-- | Whether facet information can be returned for the field.
dFacetEnabled :: Lens' DoubleOptions (Maybe Bool)

-- | Whether the contents of the field are searchable.
dSearchEnabled :: Lens' DoubleOptions (Maybe Bool)

-- | Whether the field can be used to sort the search results.
dSortEnabled :: Lens' DoubleOptions (Maybe Bool)

-- | A value to use for the field if the field isn't specified for a
--   document. This can be important if you are using the field in an
--   expression and that field is not present in every document.
dDefaultValue :: Lens' DoubleOptions (Maybe Double)

-- | A named expression that can be evaluated at search time. Can be used
--   to sort the search results, define other expressions, or return
--   computed information in the search results.
--   
--   <i>See:</i> <a>expression</a> smart constructor.
data Expression

-- | Creates a value of <a>Expression</a> with the minimum fields required
--   to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>eExpressionName</a> - Undocumented member.</li>
--   <li><a>eExpressionValue</a> - Undocumented member.</li>
--   </ul>
expression :: Text -> Text -> Expression

-- | Undocumented member.
eExpressionName :: Lens' Expression Text

-- | Undocumented member.
eExpressionValue :: Lens' Expression Text

-- | The value of an <tt>Expression</tt> and its current status.
--   
--   <i>See:</i> <a>expressionStatus</a> smart constructor.
data ExpressionStatus

-- | Creates a value of <a>ExpressionStatus</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>esOptions</a> - The expression that is evaluated for sorting
--   while processing a search request.</li>
--   <li><a>esStatus</a> - Undocumented member.</li>
--   </ul>
expressionStatus :: Expression -> OptionStatus -> ExpressionStatus

-- | The expression that is evaluated for sorting while processing a search
--   request.
esOptions :: Lens' ExpressionStatus Expression

-- | Undocumented member.
esStatus :: Lens' ExpressionStatus OptionStatus

-- | Configuration information for a field in the index, including its
--   name, type, and options. The supported options depend on the
--   <tt><a>IndexFieldType</a> </tt> .
--   
--   <i>See:</i> <a>indexField</a> smart constructor.
data IndexField

-- | Creates a value of <a>IndexField</a> with the minimum fields required
--   to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>ifDoubleArrayOptions</a> - Undocumented member.</li>
--   <li><a>ifDateOptions</a> - Undocumented member.</li>
--   <li><a>ifTextArrayOptions</a> - Undocumented member.</li>
--   <li><a>ifDoubleOptions</a> - Undocumented member.</li>
--   <li><a>ifTextOptions</a> - Undocumented member.</li>
--   <li><a>ifLatLonOptions</a> - Undocumented member.</li>
--   <li><a>ifLiteralArrayOptions</a> - Undocumented member.</li>
--   <li><a>ifIntArrayOptions</a> - Undocumented member.</li>
--   <li><a>ifDateArrayOptions</a> - Undocumented member.</li>
--   <li><a>ifIntOptions</a> - Undocumented member.</li>
--   <li><a>ifLiteralOptions</a> - Undocumented member.</li>
--   <li><a>ifIndexFieldName</a> - A string that represents the name of an
--   index field. CloudSearch supports regular index fields as well as
--   dynamic fields. A dynamic field's name defines a pattern that begins
--   or ends with a wildcard. Any document fields that don't map to a
--   regular index field but do match a dynamic field's pattern are
--   configured with the dynamic field's indexing options. Regular field
--   names begin with a letter and can contain the following characters:
--   a-z (lowercase), 0-9, and _ (underscore). Dynamic field names must
--   begin or end with a wildcard (*). The wildcard can also be the only
--   character in a dynamic field name. Multiple wildcards, and wildcards
--   embedded within a string are not supported. The name <tt>score</tt> is
--   reserved and cannot be used as a field name. To reference a document's
--   ID, you can use the name <tt>_id</tt> .</li>
--   <li><a>ifIndexFieldType</a> - Undocumented member.</li>
--   </ul>
indexField :: Text -> IndexFieldType -> IndexField

-- | Undocumented member.
ifDoubleArrayOptions :: Lens' IndexField (Maybe DoubleArrayOptions)

-- | Undocumented member.
ifDateOptions :: Lens' IndexField (Maybe DateOptions)

-- | Undocumented member.
ifTextArrayOptions :: Lens' IndexField (Maybe TextArrayOptions)

-- | Undocumented member.
ifDoubleOptions :: Lens' IndexField (Maybe DoubleOptions)

-- | Undocumented member.
ifTextOptions :: Lens' IndexField (Maybe TextOptions)

-- | Undocumented member.
ifLatLonOptions :: Lens' IndexField (Maybe LatLonOptions)

-- | Undocumented member.
ifLiteralArrayOptions :: Lens' IndexField (Maybe LiteralArrayOptions)

-- | Undocumented member.
ifIntArrayOptions :: Lens' IndexField (Maybe IntArrayOptions)

-- | Undocumented member.
ifDateArrayOptions :: Lens' IndexField (Maybe DateArrayOptions)

-- | Undocumented member.
ifIntOptions :: Lens' IndexField (Maybe IntOptions)

-- | Undocumented member.
ifLiteralOptions :: Lens' IndexField (Maybe LiteralOptions)

-- | A string that represents the name of an index field. CloudSearch
--   supports regular index fields as well as dynamic fields. A dynamic
--   field's name defines a pattern that begins or ends with a wildcard.
--   Any document fields that don't map to a regular index field but do
--   match a dynamic field's pattern are configured with the dynamic
--   field's indexing options. Regular field names begin with a letter and
--   can contain the following characters: a-z (lowercase), 0-9, and _
--   (underscore). Dynamic field names must begin or end with a wildcard
--   (*). The wildcard can also be the only character in a dynamic field
--   name. Multiple wildcards, and wildcards embedded within a string are
--   not supported. The name <tt>score</tt> is reserved and cannot be used
--   as a field name. To reference a document's ID, you can use the name
--   <tt>_id</tt> .
ifIndexFieldName :: Lens' IndexField Text

-- | Undocumented member.
ifIndexFieldType :: Lens' IndexField IndexFieldType

-- | The value of an <tt>IndexField</tt> and its current status.
--   
--   <i>See:</i> <a>indexFieldStatus</a> smart constructor.
data IndexFieldStatus

-- | Creates a value of <a>IndexFieldStatus</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>ifsOptions</a> - Undocumented member.</li>
--   <li><a>ifsStatus</a> - Undocumented member.</li>
--   </ul>
indexFieldStatus :: IndexField -> OptionStatus -> IndexFieldStatus

-- | Undocumented member.
ifsOptions :: Lens' IndexFieldStatus IndexField

-- | Undocumented member.
ifsStatus :: Lens' IndexFieldStatus OptionStatus

-- | Options for a field that contains an array of 64-bit signed integers.
--   Present if <tt>IndexFieldType</tt> specifies the field is of type
--   <tt>int-array</tt> . All options are enabled by default.
--   
--   <i>See:</i> <a>intArrayOptions</a> smart constructor.
data IntArrayOptions

-- | Creates a value of <a>IntArrayOptions</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>iaoSourceFields</a> - A list of source fields to map to the
--   field.</li>
--   <li><a>iaoReturnEnabled</a> - Whether the contents of the field can be
--   returned in the search results.</li>
--   <li><a>iaoFacetEnabled</a> - Whether facet information can be returned
--   for the field.</li>
--   <li><a>iaoSearchEnabled</a> - Whether the contents of the field are
--   searchable.</li>
--   <li><a>iaoDefaultValue</a> - A value to use for the field if the field
--   isn't specified for a document.</li>
--   </ul>
intArrayOptions :: IntArrayOptions

-- | A list of source fields to map to the field.
iaoSourceFields :: Lens' IntArrayOptions (Maybe Text)

-- | Whether the contents of the field can be returned in the search
--   results.
iaoReturnEnabled :: Lens' IntArrayOptions (Maybe Bool)

-- | Whether facet information can be returned for the field.
iaoFacetEnabled :: Lens' IntArrayOptions (Maybe Bool)

-- | Whether the contents of the field are searchable.
iaoSearchEnabled :: Lens' IntArrayOptions (Maybe Bool)

-- | A value to use for the field if the field isn't specified for a
--   document.
iaoDefaultValue :: Lens' IntArrayOptions (Maybe Integer)

-- | Options for a 64-bit signed integer field. Present if
--   <tt>IndexFieldType</tt> specifies the field is of type <tt>int</tt> .
--   All options are enabled by default.
--   
--   <i>See:</i> <a>intOptions</a> smart constructor.
data IntOptions

-- | Creates a value of <a>IntOptions</a> with the minimum fields required
--   to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>ioSourceField</a> - The name of the source field to map to the
--   field.</li>
--   <li><a>ioReturnEnabled</a> - Whether the contents of the field can be
--   returned in the search results.</li>
--   <li><a>ioFacetEnabled</a> - Whether facet information can be returned
--   for the field.</li>
--   <li><a>ioSearchEnabled</a> - Whether the contents of the field are
--   searchable.</li>
--   <li><a>ioSortEnabled</a> - Whether the field can be used to sort the
--   search results.</li>
--   <li><a>ioDefaultValue</a> - A value to use for the field if the field
--   isn't specified for a document. This can be important if you are using
--   the field in an expression and that field is not present in every
--   document.</li>
--   </ul>
intOptions :: IntOptions

-- | The name of the source field to map to the field.
ioSourceField :: Lens' IntOptions (Maybe Text)

-- | Whether the contents of the field can be returned in the search
--   results.
ioReturnEnabled :: Lens' IntOptions (Maybe Bool)

-- | Whether facet information can be returned for the field.
ioFacetEnabled :: Lens' IntOptions (Maybe Bool)

-- | Whether the contents of the field are searchable.
ioSearchEnabled :: Lens' IntOptions (Maybe Bool)

-- | Whether the field can be used to sort the search results.
ioSortEnabled :: Lens' IntOptions (Maybe Bool)

-- | A value to use for the field if the field isn't specified for a
--   document. This can be important if you are using the field in an
--   expression and that field is not present in every document.
ioDefaultValue :: Lens' IntOptions (Maybe Integer)

-- | Options for a latlon field. A latlon field contains a location stored
--   as a latitude and longitude value pair. Present if
--   <tt>IndexFieldType</tt> specifies the field is of type <tt>latlon</tt>
--   . All options are enabled by default.
--   
--   <i>See:</i> <a>latLonOptions</a> smart constructor.
data LatLonOptions

-- | Creates a value of <a>LatLonOptions</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>lloSourceField</a> - Undocumented member.</li>
--   <li><a>lloReturnEnabled</a> - Whether the contents of the field can be
--   returned in the search results.</li>
--   <li><a>lloFacetEnabled</a> - Whether facet information can be returned
--   for the field.</li>
--   <li><a>lloSearchEnabled</a> - Whether the contents of the field are
--   searchable.</li>
--   <li><a>lloSortEnabled</a> - Whether the field can be used to sort the
--   search results.</li>
--   <li><a>lloDefaultValue</a> - A value to use for the field if the field
--   isn't specified for a document.</li>
--   </ul>
latLonOptions :: LatLonOptions

-- | Undocumented member.
lloSourceField :: Lens' LatLonOptions (Maybe Text)

-- | Whether the contents of the field can be returned in the search
--   results.
lloReturnEnabled :: Lens' LatLonOptions (Maybe Bool)

-- | Whether facet information can be returned for the field.
lloFacetEnabled :: Lens' LatLonOptions (Maybe Bool)

-- | Whether the contents of the field are searchable.
lloSearchEnabled :: Lens' LatLonOptions (Maybe Bool)

-- | Whether the field can be used to sort the search results.
lloSortEnabled :: Lens' LatLonOptions (Maybe Bool)

-- | A value to use for the field if the field isn't specified for a
--   document.
lloDefaultValue :: Lens' LatLonOptions (Maybe Text)

-- | <i>See:</i> <a>limits</a> smart constructor.
data Limits

-- | Creates a value of <a>Limits</a> with the minimum fields required to
--   make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>lMaximumReplicationCount</a> - Undocumented member.</li>
--   <li><a>lMaximumPartitionCount</a> - Undocumented member.</li>
--   </ul>
limits :: Natural -> Natural -> Limits

-- | Undocumented member.
lMaximumReplicationCount :: Lens' Limits Natural

-- | Undocumented member.
lMaximumPartitionCount :: Lens' Limits Natural

-- | Options for a field that contains an array of literal strings. Present
--   if <tt>IndexFieldType</tt> specifies the field is of type
--   <tt>literal-array</tt> . All options are enabled by default.
--   
--   <i>See:</i> <a>literalArrayOptions</a> smart constructor.
data LiteralArrayOptions

-- | Creates a value of <a>LiteralArrayOptions</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>laoSourceFields</a> - A list of source fields to map to the
--   field.</li>
--   <li><a>laoReturnEnabled</a> - Whether the contents of the field can be
--   returned in the search results.</li>
--   <li><a>laoFacetEnabled</a> - Whether facet information can be returned
--   for the field.</li>
--   <li><a>laoSearchEnabled</a> - Whether the contents of the field are
--   searchable.</li>
--   <li><a>laoDefaultValue</a> - A value to use for the field if the field
--   isn't specified for a document.</li>
--   </ul>
literalArrayOptions :: LiteralArrayOptions

-- | A list of source fields to map to the field.
laoSourceFields :: Lens' LiteralArrayOptions (Maybe Text)

-- | Whether the contents of the field can be returned in the search
--   results.
laoReturnEnabled :: Lens' LiteralArrayOptions (Maybe Bool)

-- | Whether facet information can be returned for the field.
laoFacetEnabled :: Lens' LiteralArrayOptions (Maybe Bool)

-- | Whether the contents of the field are searchable.
laoSearchEnabled :: Lens' LiteralArrayOptions (Maybe Bool)

-- | A value to use for the field if the field isn't specified for a
--   document.
laoDefaultValue :: Lens' LiteralArrayOptions (Maybe Text)

-- | Options for literal field. Present if <tt>IndexFieldType</tt>
--   specifies the field is of type <tt>literal</tt> . All options are
--   enabled by default.
--   
--   <i>See:</i> <a>literalOptions</a> smart constructor.
data LiteralOptions

-- | Creates a value of <a>LiteralOptions</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>loSourceField</a> - Undocumented member.</li>
--   <li><a>loReturnEnabled</a> - Whether the contents of the field can be
--   returned in the search results.</li>
--   <li><a>loFacetEnabled</a> - Whether facet information can be returned
--   for the field.</li>
--   <li><a>loSearchEnabled</a> - Whether the contents of the field are
--   searchable.</li>
--   <li><a>loSortEnabled</a> - Whether the field can be used to sort the
--   search results.</li>
--   <li><a>loDefaultValue</a> - A value to use for the field if the field
--   isn't specified for a document.</li>
--   </ul>
literalOptions :: LiteralOptions

-- | Undocumented member.
loSourceField :: Lens' LiteralOptions (Maybe Text)

-- | Whether the contents of the field can be returned in the search
--   results.
loReturnEnabled :: Lens' LiteralOptions (Maybe Bool)

-- | Whether facet information can be returned for the field.
loFacetEnabled :: Lens' LiteralOptions (Maybe Bool)

-- | Whether the contents of the field are searchable.
loSearchEnabled :: Lens' LiteralOptions (Maybe Bool)

-- | Whether the field can be used to sort the search results.
loSortEnabled :: Lens' LiteralOptions (Maybe Bool)

-- | A value to use for the field if the field isn't specified for a
--   document.
loDefaultValue :: Lens' LiteralOptions (Maybe Text)

-- | The status of domain configuration option.
--   
--   <i>See:</i> <a>optionStatus</a> smart constructor.
data OptionStatus

-- | Creates a value of <a>OptionStatus</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>osPendingDeletion</a> - Indicates that the option will be
--   deleted once processing is complete.</li>
--   <li><a>osUpdateVersion</a> - A unique integer that indicates when this
--   option was last updated.</li>
--   <li><a>osCreationDate</a> - A timestamp for when this option was
--   created.</li>
--   <li><a>osUpdateDate</a> - A timestamp for when this option was last
--   updated.</li>
--   <li><a>osState</a> - The state of processing a change to an option.
--   Possible values: * <tt>RequiresIndexDocuments</tt> : the option's
--   latest value will not be deployed until <tt>IndexDocuments</tt> has
--   been called and indexing is complete. * <tt>Processing</tt> : the
--   option's latest value is in the process of being activated. *
--   <tt>Active</tt> : the option's latest value is completely deployed. *
--   <tt>FailedToValidate</tt> : the option value is not compatible with
--   the domain's data and cannot be used to index the data. You must
--   either modify the option value or update or remove the incompatible
--   documents.</li>
--   </ul>
optionStatus :: UTCTime -> UTCTime -> OptionState -> OptionStatus

-- | Indicates that the option will be deleted once processing is complete.
osPendingDeletion :: Lens' OptionStatus (Maybe Bool)

-- | A unique integer that indicates when this option was last updated.
osUpdateVersion :: Lens' OptionStatus (Maybe Natural)

-- | A timestamp for when this option was created.
osCreationDate :: Lens' OptionStatus UTCTime

-- | A timestamp for when this option was last updated.
osUpdateDate :: Lens' OptionStatus UTCTime

-- | The state of processing a change to an option. Possible values: *
--   <tt>RequiresIndexDocuments</tt> : the option's latest value will not
--   be deployed until <tt>IndexDocuments</tt> has been called and indexing
--   is complete. * <tt>Processing</tt> : the option's latest value is in
--   the process of being activated. * <tt>Active</tt> : the option's
--   latest value is completely deployed. * <tt>FailedToValidate</tt> : the
--   option value is not compatible with the domain's data and cannot be
--   used to index the data. You must either modify the option value or
--   update or remove the incompatible documents.
osState :: Lens' OptionStatus OptionState

-- | The desired instance type and desired number of replicas of each index
--   partition.
--   
--   <i>See:</i> <a>scalingParameters</a> smart constructor.
data ScalingParameters

-- | Creates a value of <a>ScalingParameters</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>spDesiredInstanceType</a> - The instance type that you want to
--   preconfigure for your domain. For example, <tt>search.m1.small</tt>
--   .</li>
--   <li><a>spDesiredReplicationCount</a> - The number of replicas you want
--   to preconfigure for each index partition.</li>
--   <li><a>spDesiredPartitionCount</a> - The number of partitions you want
--   to preconfigure for your domain. Only valid when you select
--   <tt>m2.2xlarge</tt> as the desired instance type.</li>
--   </ul>
scalingParameters :: ScalingParameters

-- | The instance type that you want to preconfigure for your domain. For
--   example, <tt>search.m1.small</tt> .
spDesiredInstanceType :: Lens' ScalingParameters (Maybe PartitionInstanceType)

-- | The number of replicas you want to preconfigure for each index
--   partition.
spDesiredReplicationCount :: Lens' ScalingParameters (Maybe Natural)

-- | The number of partitions you want to preconfigure for your domain.
--   Only valid when you select <tt>m2.2xlarge</tt> as the desired instance
--   type.
spDesiredPartitionCount :: Lens' ScalingParameters (Maybe Natural)

-- | The status and configuration of a search domain's scaling parameters.
--   
--   <i>See:</i> <a>scalingParametersStatus</a> smart constructor.
data ScalingParametersStatus

-- | Creates a value of <a>ScalingParametersStatus</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>spsOptions</a> - Undocumented member.</li>
--   <li><a>spsStatus</a> - Undocumented member.</li>
--   </ul>
scalingParametersStatus :: ScalingParameters -> OptionStatus -> ScalingParametersStatus

-- | Undocumented member.
spsOptions :: Lens' ScalingParametersStatus ScalingParameters

-- | Undocumented member.
spsStatus :: Lens' ScalingParametersStatus OptionStatus

-- | The endpoint to which service requests can be submitted.
--   
--   <i>See:</i> <a>serviceEndpoint</a> smart constructor.
data ServiceEndpoint

-- | Creates a value of <a>ServiceEndpoint</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>seEndpoint</a> - Undocumented member.</li>
--   </ul>
serviceEndpoint :: ServiceEndpoint

-- | Undocumented member.
seEndpoint :: Lens' ServiceEndpoint (Maybe Text)

-- | Configuration information for a search suggester. Each suggester has a
--   unique name and specifies the text field you want to use for
--   suggestions. The following options can be configured for a suggester:
--   <tt>FuzzyMatching</tt> , <tt>SortExpression</tt> .
--   
--   <i>See:</i> <a>suggester</a> smart constructor.
data Suggester

-- | Creates a value of <a>Suggester</a> with the minimum fields required
--   to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>sSuggesterName</a> - Undocumented member.</li>
--   <li><a>sDocumentSuggesterOptions</a> - Undocumented member.</li>
--   </ul>
suggester :: Text -> DocumentSuggesterOptions -> Suggester

-- | Undocumented member.
sSuggesterName :: Lens' Suggester Text

-- | Undocumented member.
sDocumentSuggesterOptions :: Lens' Suggester DocumentSuggesterOptions

-- | The value of a <tt>Suggester</tt> and its current status.
--   
--   <i>See:</i> <a>suggesterStatus</a> smart constructor.
data SuggesterStatus

-- | Creates a value of <a>SuggesterStatus</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>ssOptions</a> - Undocumented member.</li>
--   <li><a>ssStatus</a> - Undocumented member.</li>
--   </ul>
suggesterStatus :: Suggester -> OptionStatus -> SuggesterStatus

-- | Undocumented member.
ssOptions :: Lens' SuggesterStatus Suggester

-- | Undocumented member.
ssStatus :: Lens' SuggesterStatus OptionStatus

-- | Options for a field that contains an array of text strings. Present if
--   <tt>IndexFieldType</tt> specifies the field is of type
--   <tt>text-array</tt> . A <tt>text-array</tt> field is always
--   searchable. All options are enabled by default.
--   
--   <i>See:</i> <a>textArrayOptions</a> smart constructor.
data TextArrayOptions

-- | Creates a value of <a>TextArrayOptions</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>taoSourceFields</a> - A list of source fields to map to the
--   field.</li>
--   <li><a>taoReturnEnabled</a> - Whether the contents of the field can be
--   returned in the search results.</li>
--   <li><a>taoAnalysisScheme</a> - The name of an analysis scheme for a
--   <tt>text-array</tt> field.</li>
--   <li><a>taoHighlightEnabled</a> - Whether highlights can be returned
--   for the field.</li>
--   <li><a>taoDefaultValue</a> - A value to use for the field if the field
--   isn't specified for a document.</li>
--   </ul>
textArrayOptions :: TextArrayOptions

-- | A list of source fields to map to the field.
taoSourceFields :: Lens' TextArrayOptions (Maybe Text)

-- | Whether the contents of the field can be returned in the search
--   results.
taoReturnEnabled :: Lens' TextArrayOptions (Maybe Bool)

-- | The name of an analysis scheme for a <tt>text-array</tt> field.
taoAnalysisScheme :: Lens' TextArrayOptions (Maybe Text)

-- | Whether highlights can be returned for the field.
taoHighlightEnabled :: Lens' TextArrayOptions (Maybe Bool)

-- | A value to use for the field if the field isn't specified for a
--   document.
taoDefaultValue :: Lens' TextArrayOptions (Maybe Text)

-- | Options for text field. Present if <tt>IndexFieldType</tt> specifies
--   the field is of type <tt>text</tt> . A <tt>text</tt> field is always
--   searchable. All options are enabled by default.
--   
--   <i>See:</i> <a>textOptions</a> smart constructor.
data TextOptions

-- | Creates a value of <a>TextOptions</a> with the minimum fields required
--   to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>toSourceField</a> - Undocumented member.</li>
--   <li><a>toReturnEnabled</a> - Whether the contents of the field can be
--   returned in the search results.</li>
--   <li><a>toAnalysisScheme</a> - The name of an analysis scheme for a
--   <tt>text</tt> field.</li>
--   <li><a>toHighlightEnabled</a> - Whether highlights can be returned for
--   the field.</li>
--   <li><a>toSortEnabled</a> - Whether the field can be used to sort the
--   search results.</li>
--   <li><a>toDefaultValue</a> - A value to use for the field if the field
--   isn't specified for a document.</li>
--   </ul>
textOptions :: TextOptions

-- | Undocumented member.
toSourceField :: Lens' TextOptions (Maybe Text)

-- | Whether the contents of the field can be returned in the search
--   results.
toReturnEnabled :: Lens' TextOptions (Maybe Bool)

-- | The name of an analysis scheme for a <tt>text</tt> field.
toAnalysisScheme :: Lens' TextOptions (Maybe Text)

-- | Whether highlights can be returned for the field.
toHighlightEnabled :: Lens' TextOptions (Maybe Bool)

-- | Whether the field can be used to sort the search results.
toSortEnabled :: Lens' TextOptions (Maybe Bool)

-- | A value to use for the field if the field isn't specified for a
--   document.
toDefaultValue :: Lens' TextOptions (Maybe Text)
