# AddressComponent > **Information** > > The `AddressComponent` is only available for [Remember Me](https://www.checkout.com/docs/payments/accept-payments/accept-a-payment-on-your-website/extend-your-flow-integration/enable-remember-me.md) integrations. ## Methods ### isValid() Checks if the `AddressComponent` has captured all details from the customer. ```javascript function isValid() { return boolean; } ``` --- ### isAvailable() Checks if the `AddressComponent` can be rendered. Call this before mounting the `AddressComponent`. ```javascript function isAvailable() { return Promise; } ``` --- ### mount('#element') Mounts an `AddressComponent` to a page. You can either provide: - A [DOM Element Object](https://developer.mozilla.org/en-US/docs/Web/API/Document_object_model/Locating_DOM_elements_using_selectors) - An [Element Selector](https://developer.mozilla.org/en-US/docs/Web/API/Element) | Parameter | Type | Description | | --- | --- | --- | | `#elem` | `object` | The Element Selector or DOM Element object to mount to | ```javascript function mount('#element') { return AddressComponent; } ``` --- ### unmount() Unmounts an `AddressComponent` from the page. This stops rendering the component, and removes all life-cycles from the browser. ```javascript function unmount() { return AddressComponent; } ``` --- ## Events ### onReady(AddressComponent) Raised when an `AddressComponent` is initialized and ready for the customer to interact. ```javascript const AddressComponent = checkout.create('shipping_address', { onReady: (_self) => { }, }); AddressComponent.mount('#address-container'); ``` --- ### onChange(AddressComponent) Raised when an `AddressComponent` changes after a customer interaction. ```javascript const AddressComponent = checkout.create('shipping_address', { onChange: (_self) => { }, }); AddressComponent.mount('#address-container'); ```