diff --git a/amazonka-route53-domains.cabal b/amazonka-route53-domains.cabal
--- a/amazonka-route53-domains.cabal
+++ b/amazonka-route53-domains.cabal
@@ -1,5 +1,5 @@
 name:                  amazonka-route53-domains
-version:               0.0.0
+version:               0.0.1
 synopsis:              Amazon Route 53 Domains SDK.
 homepage:              https://github.com/brendanhay/amazonka
 license:               OtherLicense
@@ -52,5 +52,5 @@
     other-modules:
 
     build-depends:
-          amazonka-core
-        , base          >= 4.7 && < 5
+          amazonka-core == 0.0.1.*
+        , base          >= 4.7     && < 5
diff --git a/gen/Network/AWS/Route53Domains/CheckDomainAvailability.hs b/gen/Network/AWS/Route53Domains/CheckDomainAvailability.hs
--- a/gen/Network/AWS/Route53Domains/CheckDomainAvailability.hs
+++ b/gen/Network/AWS/Route53Domains/CheckDomainAvailability.hs
@@ -81,16 +81,16 @@
 cdaIdnLangCode = lens _cdaIdnLangCode (\s a -> s { _cdaIdnLangCode = a })
 
 newtype CheckDomainAvailabilityResponse = CheckDomainAvailabilityResponse
-    { _cdarAvailability :: Text
-    } deriving (Eq, Ord, Show, Monoid, IsString)
+    { _cdarAvailability :: DomainAvailability
+    } deriving (Eq, Show)
 
 -- | 'CheckDomainAvailabilityResponse' constructor.
 --
 -- The fields accessible through corresponding lenses are:
 --
--- * 'cdarAvailability' @::@ 'Text'
+-- * 'cdarAvailability' @::@ 'DomainAvailability'
 --
-checkDomainAvailabilityResponse :: Text -- ^ 'cdarAvailability'
+checkDomainAvailabilityResponse :: DomainAvailability -- ^ 'cdarAvailability'
                                 -> CheckDomainAvailabilityResponse
 checkDomainAvailabilityResponse p1 = CheckDomainAvailabilityResponse
     { _cdarAvailability = p1
@@ -104,7 +104,7 @@
 -- not available. UNAVAILABLE_RESTRICTED – The domain name is forbidden.
 -- RESERVED – The domain name has been reserved for another person or
 -- organization.
-cdarAvailability :: Lens' CheckDomainAvailabilityResponse Text
+cdarAvailability :: Lens' CheckDomainAvailabilityResponse DomainAvailability
 cdarAvailability = lens _cdarAvailability (\s a -> s { _cdarAvailability = a })
 
 instance ToPath CheckDomainAvailability where
diff --git a/gen/Network/AWS/Route53Domains/GetOperationDetail.hs b/gen/Network/AWS/Route53Domains/GetOperationDetail.hs
--- a/gen/Network/AWS/Route53Domains/GetOperationDetail.hs
+++ b/gen/Network/AWS/Route53Domains/GetOperationDetail.hs
@@ -77,10 +77,10 @@
     { _godrDomainName    :: Maybe Text
     , _godrMessage       :: Maybe Text
     , _godrOperationId   :: Maybe Text
-    , _godrStatus        :: Maybe Text
+    , _godrStatus        :: Maybe OperationStatus
     , _godrSubmittedDate :: Maybe RFC822
-    , _godrType          :: Maybe Text
-    } deriving (Eq, Ord, Show)
+    , _godrType          :: Maybe OperationType
+    } deriving (Eq, Show)
 
 -- | 'GetOperationDetailResponse' constructor.
 --
@@ -92,11 +92,11 @@
 --
 -- * 'godrOperationId' @::@ 'Maybe' 'Text'
 --
--- * 'godrStatus' @::@ 'Maybe' 'Text'
+-- * 'godrStatus' @::@ 'Maybe' 'OperationStatus'
 --
 -- * 'godrSubmittedDate' @::@ 'Maybe' 'UTCTime'
 --
--- * 'godrType' @::@ 'Maybe' 'Text'
+-- * 'godrType' @::@ 'Maybe' 'OperationType'
 --
 getOperationDetailResponse :: GetOperationDetailResponse
 getOperationDetailResponse = GetOperationDetailResponse
@@ -123,7 +123,7 @@
 
 -- | The current status of the requested operation in the system. Type:
 -- String.
-godrStatus :: Lens' GetOperationDetailResponse (Maybe Text)
+godrStatus :: Lens' GetOperationDetailResponse (Maybe OperationStatus)
 godrStatus = lens _godrStatus (\s a -> s { _godrStatus = a })
 
 -- | The date when the request was submitted.
@@ -133,7 +133,7 @@
         . mapping _Time
 
 -- | The type of operation that was requested. Type: String.
-godrType :: Lens' GetOperationDetailResponse (Maybe Text)
+godrType :: Lens' GetOperationDetailResponse (Maybe OperationType)
 godrType = lens _godrType (\s a -> s { _godrType = a })
 
 instance ToPath GetOperationDetail where
diff --git a/gen/Network/AWS/Route53Domains/Types.hs b/gen/Network/AWS/Route53Domains/Types.hs
--- a/gen/Network/AWS/Route53Domains/Types.hs
+++ b/gen/Network/AWS/Route53Domains/Types.hs
@@ -239,6 +239,10 @@
         SgIdNumber          -> "SG_ID_NUMBER"
         VatNumber           -> "VAT_NUMBER"
 
+instance ToByteString ExtraParamName
+instance ToHeader     ExtraParamName
+instance ToQuery      ExtraParamName
+
 instance FromJSON ExtraParamName where
     parseJSON = parseJSONText "ExtraParamName"
 
@@ -315,6 +319,10 @@
         Submitted  -> "SUBMITTED"
         Successful -> "SUCCESSFUL"
 
+instance ToByteString OperationStatus
+instance ToHeader     OperationStatus
+instance ToQuery      OperationStatus
+
 instance FromJSON OperationStatus where
     parseJSON = parseJSONText "OperationStatus"
 
@@ -352,6 +360,10 @@
         UnavailablePremium    -> "UNAVAILABLE_PREMIUM"
         UnavailableRestricted -> "UNAVAILABLE_RESTRICTED"
 
+instance ToByteString DomainAvailability
+instance ToHeader     DomainAvailability
+instance ToQuery      DomainAvailability
+
 instance FromJSON DomainAvailability where
     parseJSON = parseJSONText "DomainAvailability"
 
@@ -389,6 +401,10 @@
         OTUpdateDomainContact     -> "UPDATE_DOMAIN_CONTACT"
         OTUpdateNameserver        -> "UPDATE_NAMESERVER"
 
+instance ToByteString OperationType
+instance ToHeader     OperationType
+instance ToQuery      OperationType
+
 instance FromJSON OperationType where
     parseJSON = parseJSONText "OperationType"
 
@@ -1092,6 +1108,10 @@
         Zm  -> "ZM"
         Zw  -> "ZW"
 
+instance ToByteString CountryCode
+instance ToHeader     CountryCode
+instance ToQuery      CountryCode
+
 instance FromJSON CountryCode where
     parseJSON = parseJSONText "CountryCode"
 
@@ -1099,19 +1119,19 @@
     toJSON = toJSONText
 
 data ExtraParam = ExtraParam
-    { _epName  :: Text
+    { _epName  :: ExtraParamName
     , _epValue :: Text
-    } deriving (Eq, Ord, Show)
+    } deriving (Eq, Show)
 
 -- | 'ExtraParam' constructor.
 --
 -- The fields accessible through corresponding lenses are:
 --
--- * 'epName' @::@ 'Text'
+-- * 'epName' @::@ 'ExtraParamName'
 --
 -- * 'epValue' @::@ 'Text'
 --
-extraParam :: Text -- ^ 'epName'
+extraParam :: ExtraParamName -- ^ 'epName'
            -> Text -- ^ 'epValue'
            -> ExtraParam
 extraParam p1 p2 = ExtraParam
@@ -1126,7 +1146,7 @@
 -- FI_BUSINESS_NUMBER | FI_ID_NUMBER | IT_PIN | RU_PASSPORT_DATA |
 -- SE_ID_NUMBER | SG_ID_NUMBER | VAT_NUMBER Parent: ExtraParams Required:
 -- Yes.
-epName :: Lens' ExtraParam Text
+epName :: Lens' ExtraParam ExtraParamName
 epName = lens _epName (\s a -> s { _epName = a })
 
 -- | Values corresponding to the additional parameter names required by some
@@ -1171,6 +1191,10 @@
         CTPublicBody  -> "PUBLIC_BODY"
         CTReseller    -> "RESELLER"
 
+instance ToByteString ContactType
+instance ToHeader     ContactType
+instance ToQuery      ContactType
+
 instance FromJSON ContactType where
     parseJSON = parseJSONText "ContactType"
 
@@ -1181,8 +1205,8 @@
     { _cdAddressLine1     :: Maybe Text
     , _cdAddressLine2     :: Maybe Text
     , _cdCity             :: Maybe Text
-    , _cdContactType      :: Maybe Text
-    , _cdCountryCode      :: Maybe Text
+    , _cdContactType      :: Maybe ContactType
+    , _cdCountryCode      :: Maybe CountryCode
     , _cdEmail            :: Maybe Text
     , _cdExtraParams      :: List "ExtraParams" ExtraParam
     , _cdFax              :: Maybe Text
@@ -1204,9 +1228,9 @@
 --
 -- * 'cdCity' @::@ 'Maybe' 'Text'
 --
--- * 'cdContactType' @::@ 'Maybe' 'Text'
+-- * 'cdContactType' @::@ 'Maybe' 'ContactType'
 --
--- * 'cdCountryCode' @::@ 'Maybe' 'Text'
+-- * 'cdCountryCode' @::@ 'Maybe' 'CountryCode'
 --
 -- * 'cdEmail' @::@ 'Maybe' 'Text'
 --
@@ -1268,13 +1292,13 @@
 -- the contact. Type: String Default: None Constraints: Maximum 255
 -- characters. Valid values: PERSON | COMPANY | ASSOCIATION | PUBLIC_BODY
 -- Parents: RegistrantContact, AdminContact, TechContact Required: Yes.
-cdContactType :: Lens' ContactDetail (Maybe Text)
+cdContactType :: Lens' ContactDetail (Maybe ContactType)
 cdContactType = lens _cdContactType (\s a -> s { _cdContactType = a })
 
 -- | Code for the country of the contact's address. Type: String Default: None
 -- Constraints: Maximum 255 characters. Parents: RegistrantContact,
 -- AdminContact, TechContact Required: Yes.
-cdCountryCode :: Lens' ContactDetail (Maybe Text)
+cdCountryCode :: Lens' ContactDetail (Maybe CountryCode)
 cdCountryCode = lens _cdCountryCode (\s a -> s { _cdCountryCode = a })
 
 -- | Email address of the contact. Type: String Default: None Constraints:
@@ -1374,10 +1398,10 @@
 
 data OperationSummary = OperationSummary
     { _osOperationId   :: Text
-    , _osStatus        :: Text
+    , _osStatus        :: OperationStatus
     , _osSubmittedDate :: RFC822
-    , _osType          :: Text
-    } deriving (Eq, Ord, Show)
+    , _osType          :: OperationType
+    } deriving (Eq, Show)
 
 -- | 'OperationSummary' constructor.
 --
@@ -1385,15 +1409,15 @@
 --
 -- * 'osOperationId' @::@ 'Text'
 --
--- * 'osStatus' @::@ 'Text'
+-- * 'osStatus' @::@ 'OperationStatus'
 --
 -- * 'osSubmittedDate' @::@ 'UTCTime'
 --
--- * 'osType' @::@ 'Text'
+-- * 'osType' @::@ 'OperationType'
 --
 operationSummary :: Text -- ^ 'osOperationId'
-                 -> Text -- ^ 'osStatus'
-                 -> Text -- ^ 'osType'
+                 -> OperationStatus -- ^ 'osStatus'
+                 -> OperationType -- ^ 'osType'
                  -> UTCTime -- ^ 'osSubmittedDate'
                  -> OperationSummary
 operationSummary p1 p2 p3 p4 = OperationSummary
@@ -1409,7 +1433,7 @@
 
 -- | The current status of the requested operation in the system. Type:
 -- String.
-osStatus :: Lens' OperationSummary Text
+osStatus :: Lens' OperationSummary OperationStatus
 osStatus = lens _osStatus (\s a -> s { _osStatus = a })
 
 -- | The date when the request was submitted.
@@ -1419,7 +1443,7 @@
 -- | Type of the action requested. Type: String Valid values: REGISTER_DOMAIN
 -- | DELETE_DOMAIN | TRANSFER_IN_DOMAIN | UPDATE_DOMAIN_CONTACT |
 -- UPDATE_NAMESERVER | CHANGE_PRIVACY_PROTECTION | DOMAIN_LOCK.
-osType :: Lens' OperationSummary Text
+osType :: Lens' OperationSummary OperationType
 osType = lens _osType (\s a -> s { _osType = a })
 
 instance FromJSON OperationSummary where
