A Statement is what defines a specific permission and contains the following:
Action - define what you can (or cannot, in case of Effect Deny) do to a resource like viewing, creating, editing and deleting.
Resource - an entity that exists within an AWS Service. it defines what actions are available element specifies the object or objects that the statement covers.
Effect element is required and specifies whether the statement results in an allow or an explicit deny.
Condition element (or Condition block) lets you specify conditions for when a policy is in effect. (for example allow access only from specific IP or if MFA is enabled "Condition": {"Bool": {"aws:MultiFactorAuthPresent": "true"}})
Sid - an optional identifier for each statement, can be customised to make each statement, if you have more than one in the same policy, more readable and, well identifiable
Principal - this is only available/necessary in Resource Based policies, and identifies who is entitled to execute the action on the resource