> For the complete documentation index, see [llms.txt](https://gitbook.roboqo.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://gitbook.roboqo.com/global-objects/warp-object.md).

# Warp Object

Warp (Bloxroute BDN) global object.

## Warp Class Documentation

The `Warp` class provides methods for interacting with Solana blockchain transactions, focusing on submitting transactions and retrieving tip statistics. It integrates with the Roboqo client for efficient communication and transaction handling.

### Methods

#### submitTransaction

**Description** Submits a single transaction to the Solana blockchain.

**Signature**

```typescript
public async submitTransaction(
  transaction: Transaction | VersionedTransaction,
  options?: { skipPreFlight?: boolean }
): Promise<SolanaTransaction>
```

**Parameters**

* `transaction` (`Transaction | VersionedTransaction`): The transaction to submit.
* `options` (`{ skipPreFlight?: boolean }`): Optional. Indicates whether to skip the pre-flight check. Default is `false`.

**Returns**

* `Promise<SolanaTransaction>`: An object representing the submitted transaction, including the signature.

**Example Usage**

```typescript
const solanaTx = await warp.submitTransaction(transaction, { skipPreFlight: true });
console.log("Transaction Signature:", solanaTx.signature);
```

***

#### submitTransactions

**Description** Submits multiple transactions to the Solana blockchain.

**Signature**

```typescript
public async submitTransactions(
  request: SubmitTransactionsRequest
): Promise<SolanaBundle>
```

**Parameters**

* `request` (`SubmitTransactionsRequest`): An object containing:
  * `transactions` (`(Transaction | VersionedTransaction)[]`): An array of transactions to submit.
  * `skipPreFlight` (`boolean`): Optional. Indicates whether to skip the pre-flight check.

**Returns**

* `Promise<SolanaBundle>`: An object containing the signatures of the submitted transactions.

**Example Usage**

```typescript
const bundle = await warp.submitTransactions({
  transactions: [transaction1, transaction2],
  skipPreFlight: false,
});
console.log("Transaction Signatures:", bundle.signatures);
```

***

#### getTipStats

**Description** Retrieves statistical data about transaction tips on Solana, including percentiles and slot information.

**Signature**

```typescript
public async getTipStats(): Promise<WarpTipStats>
```

**Returns**

* `Promise<WarpTipStats>`: An object containing statistics about transaction tips.

**Example Usage**

```typescript
const tipStats = await warp.getTipStats();
console.log("Tip Statistics:", tipStats);
```

***

### Types

#### WarpTipStats

Represents statistical data about transaction tips.

```typescript
type WarpTipStats = {
  id: number;
  p25: number;
  p50: number;
  p75: number;
  p95: number;
  p99: number;
  slot: number;
};
```

**Fields**

* `id` (`number`): Identifier for the tip statistics.
* `p25` (`number`): 25th percentile of transaction tips.
* `p50` (`number`): Median (50th percentile) of transaction tips.
* `p75` (`number`): 75th percentile of transaction tips.
* `p95` (`number`): 95th percentile of transaction tips.
* `p99` (`number`): 99th percentile of transaction tips.
* `slot` (`number`): The Solana blockchain slot associated with the statistics.
