> For the complete documentation index, see [llms.txt](/llms.txt).

# Embedded Wallets events and status

This page documents the key properties and lifecycle events available from an Embedded Wallets instance. These allow you to track the connection status, react to changes, and build responsive user experiences.

## `connected`[​](#connected "Direct link to connected")

Returns `true` if a wallet is connected, otherwise `false`.

#### Interface[​](#interface "Direct link to Interface")

```
get connected(): boolean;

```

#### Usage[​](#usage "Direct link to Usage")

```
const isConnected = web3auth.connected

```

## `provider`[​](#provider "Direct link to provider")

Returns the current provider instance if connected.

#### Interface[​](#interface-1 "Direct link to Interface")

```
get provider(): IProvider | null;

```

#### Usage[​](#usage-1 "Direct link to Usage")

```
const provider = web3auth.provider

```

## `connectedConnectorName`[​](#connectedconnectorname "Direct link to connectedconnectorname")

Name of the currently connected wallet connector, or `null` if not connected.

#### Interface[​](#interface-2 "Direct link to Interface")

```
connectedConnectorName: WALLET_CONNECTOR_TYPE | null

```

##### `WALLET_CONNECTOR_TYPE`[​](#wallet%5Fconnector%5Ftype "Direct link to wallet_connector_type")

- Table
- Interface

| Event             | Description                 |
| ----------------- | --------------------------- |
| AUTH              | Web3Auth connector.         |
| WALLET_CONNECT_V2 | WalletConnect V2 connector. |
| COINBASE          | Coinbase connector.         |
| METAMASK          | MetaMask connector.         |

```
export type WALLET_CONNECTOR_TYPE = (typeof WALLET_CONNECTORS)[keyof typeof WALLET_CONNECTORS]
export declare const WALLET_CONNECTORS: {
  readonly AUTH: 'auth'
  readonly WALLET_CONNECT_V2: 'wallet-connect-v2'
  readonly COINBASE: 'coinbase'
  readonly METAMASK: 'metamask'
}

```

#### Usage[​](#usage-2 "Direct link to Usage")

```
const connectorName = web3auth.connectedConnectorName

```

## `status`[​](#status "Direct link to status")

Current status of the Web3Auth instance. Emits status change events.

#### Interface[​](#interface-3 "Direct link to Interface")

```
status: CONNECTOR_STATUS_TYPE

```

##### `CONNECTOR_STATUS_TYPE`[​](#connector%5Fstatus%5Ftype "Direct link to connector_status_type")

- Table
- Interface

| Event         | Description                                                     |
| ------------- | --------------------------------------------------------------- |
| NOT_READY     | Triggered when the connector is not ready.                      |
| READY         | Triggered when the connector is ready.                          |
| CONNECTING    | Triggered when a connection is being established.               |
| CONNECTED     | Triggered when a wallet is successfully connected.              |
| DISCONNECTING | Triggered when the wallet is in the process of Disconnecting.   |
| DISCONNECTED  | Triggered when the wallet is Disconnected.                      |
| ERRORED       | Triggered when an error occurs during the connection lifecycle. |

```
export type CONNECTOR_STATUS_TYPE = (typeof CONNECTOR_STATUS)[keyof typeof CONNECTOR_STATUS]
export declare const CONNECTOR_STATUS: {
  readonly NOT_READY: 'not_ready'
  readonly READY: 'ready'
  readonly CONNECTING: 'connecting'
  readonly CONNECTED: 'connected'
  readonly DISCONNECTING: 'disconnecting'
  readonly DISCONNECTED: 'disconnected'
  readonly ERRORED: 'errored'
}

```

#### Usage[​](#usage-3 "Direct link to Usage")

```
const status = web3auth.status

```

## `currentChain`[​](#currentchain "Direct link to currentchain")

Returns the current chain configuration if connected.

#### Interface[​](#interface-4 "Direct link to Interface")

```
get currentChain(): CustomChainConfig | undefined;

```

#### `chainConfig`[​](#chainconfig "Direct link to chainconfig")

```
const chainConfig = {
  chainId: '0x1', // Please use 0x1 for Mainnet
  rpcTarget: 'https://rpc.ethereum.org',
  displayName: 'Ethereum Mainnet',
  blockExplorerUrl: 'https://etherscan.io/',
  ticker: 'ETH',
  tickerName: 'Ethereum',
  logo: 'https://images.toruswallet.io/eth.svg',
}

```

- Table
- Type Declarations

| Parameter         | Description                            |
| ----------------- | -------------------------------------- |
| chainNamespace    | Namespace of the chain                 |
| chainId           | Chain ID of the chain                  |
| rpcTarget         | RPC target URL for the chain           |
| wsTarget?         | Web socket target URL for the chain    |
| displayName?      | Display name for the chain             |
| blockExplorerUrl? | URL of the block explorer              |
| ticker?           | Default currency ticker of the network |
| tickerName?       | Name for currency ticker               |
| decimals?         | Number of decimals for the currency    |
| logo?             | Logo for the token                     |
| isTestnet?        | Whether the network is testnet or not  |

```
export declare const CHAIN_NAMESPACES: {
  readonly EIP155: 'eip155'
  readonly SOLANA: 'solana'
  readonly CASPER: 'casper'
  readonly XRPL: 'xrpl'
  readonly OTHER: 'other'
}

export type ChainNamespaceType = (typeof CHAIN_NAMESPACES)[keyof typeof CHAIN_NAMESPACES]
export type CustomChainConfig = {
  chainNamespace: ChainNamespaceType
  /**
   * The chain id of the chain
   */
  chainId: string
  /**
   * RPC target Url for the chain
   */
  rpcTarget: string
  /**
   * web socket target url for the chain
   */
  wsTarget?: string
  /**
   * Display Name for the chain
   */
  displayName?: string
  /**
   * Url of the block explorer
   */
  blockExplorerUrl?: string
  /**
   * Default currency ticker of the network (e.g: ETH)
   */
  ticker?: string
  /**
   * Name for currency ticker (e.g: `Ethereum`)
   */
  tickerName?: string
  /**
   * Number of decimals for the currency ticker (e.g: 18)
   */
  decimals?: number
  /**
   * Logo for the token
   */
  logo?: string
  /**
   * Whether the network is testnet or not
   */
  isTestnet?: boolean
}

```

#### Usage[​](#usage-4 "Direct link to Usage")

```
const chain = web3auth.currentChain

```

## `connectedConnector`[​](#connectedconnector "Direct link to connectedconnector")

Returns the connector instance for the connected wallet, or `null`.

#### Interface[​](#interface-5 "Direct link to Interface")

```
get connectedConnector(): IConnector<unknown> | null;

```

#### Usage[​](#usage-5 "Direct link to Usage")

```
const connector = web3auth.connectedConnector

```

## `accountAbstractionProvider`[​](#accountabstractionprovider "Direct link to accountabstractionprovider")

Returns the account abstraction provider if available.

#### Interface[​](#interface-6 "Direct link to Interface")

```
get accountAbstractionProvider(): AccountAbstractionProvider | null;

```

#### Usage[​](#usage-6 "Direct link to Usage")

```
const aaProvider = web3auth.accountAbstractionProvider

```

## `getConnector`[​](#getconnector "Direct link to getconnector")

Returns a connector instance for a given connector name and chain namespace.

#### Interface[​](#interface-7 "Direct link to Interface")

```
getConnector(connectorName: WALLET_CONNECTOR_TYPE, chainNamespace?: ChainNamespaceType): IConnector<unknown> | null;

export type WALLET_CONNECTOR_TYPE = (typeof WALLET_CONNECTORS)[keyof typeof WALLET_CONNECTORS];
export declare const WALLET_CONNECTORS: {
  readonly AUTH: "auth";
  readonly WALLET_CONNECT_V2: "wallet-connect-v2";
  readonly COINBASE: "coinbase";
  readonly METAMASK: "metamask";
};
export type ChainNamespaceType = (typeof CHAIN_NAMESPACES)[keyof typeof CHAIN_NAMESPACES];

```

#### Usage[​](#usage-7 "Direct link to Usage")

```
const connector = web3auth.getConnector('WALLET_CONNECT_V2', 'eip155')

```

## `getPlugin`[​](#getplugin "Direct link to getplugin")

Returns a plugin instance by name, or `null` if not found.

#### Interface[​](#interface-8 "Direct link to Interface")

```
getPlugin(name: string): IPlugin | null;

export interface IPlugin extends SafeEventEmitter {
  name: string;
  status: PLUGIN_STATUS_TYPE;
  SUPPORTED_CONNECTORS: WALLET_CONNECTOR_TYPE[];
  pluginNamespace: PluginNamespace;
  initWithWeb3Auth(web3auth: IWeb3AuthCore, whiteLabel?: WhiteLabelData): Promise<void>;
  connect(): Promise<void>;
  disconnect(): Promise<void>;
  cleanup(): Promise<void>;
}

```

#### Usage[​](#usage-8 "Direct link to Usage")

```
const plugin = web3auth.getPlugin('walletServices')

```
