Can't add AWS amplify ANAME to freenom domain DNS

“A” records (ie alias) only support IP addresses as values. That is why you are getting an error. CNAME is the record type you want when you want a URL as a value.

Route53 is a special case and since Cloudfront and Route53 are both AWS products they have special integrations that will allow you to create an A record for cloudfront resources identified by a url. Behind the scenes, Route53 gets the IP from cloudfront and will update the A record when/if the IP changes. AWS doesn’t expose this functionality for other DNS providers (ie freenom)