For creating segments, follow the documentation here: https://docs.aws.amazon.com/pinpoint/latest/userguide/segments-importing.html
When importing a segment, using the CLI or console, type of endpoint and the endpoint address can be specified. If you are trying to send to emails, then channel type should be email and address should be an email address. After importing this segment you will be able to create a campaign with said segment.
For event based triggers, a dynamic segment is needed. This documentation should help in understanding how that works: https://docs.aws.amazon.com/pinpoint/latest/userguide/segments-building.html#segments-building-procedure
Using Amplify SDK to create the endpoints, Amplify by default registers endpoints that have OptOut set to all. Need to set OptOut to NONE for any registered endpoint to show up in "Eligible Endpoints" when creating a segment in the console.