-- 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.4.5


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)


-- | 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 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
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.UpdateAvailabilityOptions.UpdateAvailabilityOptionsResponse


-- | 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 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
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.UpdateScalingParameters.UpdateScalingParametersResponse


-- | 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 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
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.UpdateServiceAccessPolicies.UpdateServiceAccessPoliciesResponse


module Network.AWS.CloudSearch.Waiters


-- | 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 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
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.ListDomainNames.ListDomainNamesResponse


-- | 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 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
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.IndexDocuments.IndexDocumentsResponse


-- | 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 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
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DescribeSuggesters.DescribeSuggestersResponse


-- | 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 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
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DescribeServiceAccessPolicies.DescribeServiceAccessPoliciesResponse


-- | 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 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
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DescribeScalingParameters.DescribeScalingParametersResponse


-- | 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 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
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DescribeIndexFields.DescribeIndexFieldsResponse


-- | 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 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
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DescribeExpressions.DescribeExpressionsResponse


-- | 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 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
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DescribeDomains.DescribeDomainsResponse


-- | 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 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
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DescribeAvailabilityOptions.DescribeAvailabilityOptionsResponse


-- | 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 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
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DescribeAnalysisSchemes.DescribeAnalysisSchemesResponse


-- | 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 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
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DeleteSuggester.DeleteSuggesterResponse


-- | 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 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
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DeleteIndexField.DeleteIndexFieldResponse


-- | 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 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
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DeleteExpression.DeleteExpressionResponse


-- | 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 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
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DeleteDomain.DeleteDomainResponse


-- | 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 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
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DeleteAnalysisScheme.DeleteAnalysisSchemeResponse


-- | 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 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
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DefineSuggester.DefineSuggesterResponse


-- | 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 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
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DefineIndexField.DefineIndexFieldResponse


-- | 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 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
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DefineExpression.DefineExpressionResponse


-- | 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 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
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.DefineAnalysisScheme.DefineAnalysisSchemeResponse


-- | 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 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
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.CreateDomain.CreateDomainResponse


-- | 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 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
instance Control.DeepSeq.NFData Network.AWS.CloudSearch.BuildSuggesters.BuildSuggestersResponse


-- | <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)
