{"id":42102113,"url":"https://github.com/Cap-go/capacitor-fast-sql","last_synced_at":"2026-02-05T13:00:49.971Z","repository":{"id":321379218,"uuid":"1085595162","full_name":"Cap-go/capacitor-fast-sql","owner":"Cap-go","description":"Capacitor plugin to connect to local SQL with fast protocole","archived":false,"fork":false,"pushed_at":"2026-02-02T15:59:43.000Z","size":629,"stargazers_count":9,"open_issues_count":5,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-02-02T20:21:09.878Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Cap-go.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":"Cap-go","patreon":null,"open_collective":"capgo","ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"custom":null}},"created_at":"2025-10-29T08:59:30.000Z","updated_at":"2026-02-02T07:13:16.000Z","dependencies_parsed_at":"2026-01-19T14:05:49.237Z","dependency_job_id":null,"html_url":"https://github.com/Cap-go/capacitor-fast-sql","commit_stats":null,"previous_names":["cap-go/capacitor-fast-sql"],"tags_count":25,"template":false,"template_full_name":null,"purl":"pkg:github/Cap-go/capacitor-fast-sql","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Cap-go%2Fcapacitor-fast-sql","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Cap-go%2Fcapacitor-fast-sql/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Cap-go%2Fcapacitor-fast-sql/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Cap-go%2Fcapacitor-fast-sql/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Cap-go","download_url":"https://codeload.github.com/Cap-go/capacitor-fast-sql/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Cap-go%2Fcapacitor-fast-sql/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29107301,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-05T00:52:08.035Z","status":"online","status_checked_at":"2026-02-05T02:00:07.839Z","response_time":65,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-01-26T13:00:21.332Z","updated_at":"2026-02-05T13:00:49.961Z","avatar_url":"https://github.com/Cap-go.png","language":"TypeScript","readme":"# @capgo/capacitor-fast-sql\n  \u003ca href=\"https://capgo.app/\"\u003e\u003cimg src='https://raw.githubusercontent.com/Cap-go/capgo/main/assets/capgo_banner.png' alt='Capgo - Instant updates for capacitor'/\u003e\u003c/a\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003ch2\u003e\u003ca href=\"https://capgo.app/?ref=plugin_fast_sql\"\u003e ➡️ Get Instant updates for your App with Capgo\u003c/a\u003e\u003c/h2\u003e\n  \u003ch2\u003e\u003ca href=\"https://capgo.app/consulting/?ref=plugin_fast_sql\"\u003e Missing a feature? We'll build the plugin for you 💪\u003c/a\u003e\u003c/h2\u003e\n\u003c/div\u003e\n\nHigh-performance native SQLite plugin with HTTP server for efficient sync operations and IndexedDB replacement.\nOfficial Capgo alternative to Ionic Appflow Secure Storage.\n\n## Why Fast SQL?\n\nTraditional Capacitor plugins serialize data through the JavaScript bridge, which becomes inefficient with large datasets. Fast SQL solves this by establishing a local HTTP server for direct native communication, making it ideal for:\n\n- **Local-first sync systems** (CRDTs, operational transforms)\n- **IndexedDB replacement** on platforms with broken/limited implementations\n- **Large dataset operations** requiring high throughput\n- **Batch operations** with thousands of rows\n- **Binary data storage** (BLOBs, files)\n\n## Documentation\n\nThe most complete doc is available here: https://capgo.app/docs/plugins/fast-sql/\n\n## Compatibility\n\n| Plugin version | Capacitor compatibility | Maintained |\n| -------------- | ----------------------- | ---------- |\n| v8.\\*.\\*       | v8.\\*.\\*                | ✅          |\n| v7.\\*.\\*       | v7.\\*.\\*                | On demand   |\n| v6.\\*.\\*       | v6.\\*.\\*                | ❌          |\n| v5.\\*.\\*       | v5.\\*.\\*                | ❌          |\n\n\u003e **Note:** The major version of this plugin follows the major version of Capacitor. Use the version that matches your Capacitor installation (e.g., plugin v8 for Capacitor 8). Only the latest major version is actively maintained.\n\n## Install\n\n```bash\nnpm install @capgo/capacitor-fast-sql\nnpx cap sync\n```\n\n## Overview\n\nThis plugin provides direct native SQLite database access with a custom communication protocol inspired by [capacitor-blob-writer](https://github.com/diachedelic/capacitor-blob-writer). Instead of using Capacitor's standard bridge (which serializes data inefficiently), it establishes a local HTTP server for optimal performance with large datasets and sync operations.\n\n### Key Features\n\n- **Custom HTTP Protocol**: Bypasses Capacitor's bridge for up to 25x faster performance with large data\n- **Direct Native SQLite**: Full SQL support with transactions, batch operations, and binary data\n- **Sync-Friendly**: Designed for local sync systems (CRDTs, operational transforms, etc.)\n- **IndexedDB Replacement**: Provides reliable alternative to broken/limited IndexedDB implementations\n- **Cross-Platform**: iOS, Android, and Web (using sql.js + IndexedDB for persistence)\n\n## iOS Configuration\n\nAdd to your `Info.plist` if you encounter any issues:\n\n```xml\n\u003ckey\u003eNSAppTransportSecurity\u003c/key\u003e\n\u003cdict\u003e\n    \u003ckey\u003eNSAllowsLocalNetworking\u003c/key\u003e\n    \u003ctrue/\u003e\n\u003c/dict\u003e\n```\n\n## Android Configuration\n\nAdd to your `AndroidManifest.xml` if needed:\n\n```xml\n\u003capplication\n    android:usesCleartextTraffic=\"true\"\u003e\n    ...\n\u003c/application\u003e\n```\n\n## Encryption (iOS/Android)\n\nSet `encrypted: true` and provide an `encryptionKey` when connecting. This uses SQLCipher on mobile platforms (ensure SQLCipher is linked on iOS if you use SwiftPM).\n\n## Usage\n\n### Basic Example\n\n```typescript\nimport { FastSQL } from '@capgo/capacitor-fast-sql';\n\n// Connect to database\nconst db = await FastSQL.connect({ database: 'myapp' });\n\n// Create table\nawait db.execute(`\n  CREATE TABLE IF NOT EXISTS users (\n    id INTEGER PRIMARY KEY AUTOINCREMENT,\n    name TEXT NOT NULL,\n    email TEXT UNIQUE\n  )\n`);\n\n// Insert data\nconst result = await db.run(\n  'INSERT INTO users (name, email) VALUES (?, ?)',\n  ['John Doe', 'john@example.com']\n);\nconsole.log('Inserted row ID:', result.insertId);\n\n// Query data\nconst users = await db.query('SELECT * FROM users WHERE name LIKE ?', ['John%']);\nconsole.log('Users:', users);\n\n// Close connection\nawait FastSQL.disconnect('myapp');\n```\n\n### Transaction Example\n\n```typescript\nconst db = await FastSQL.connect({ database: 'myapp' });\n\ntry {\n  await db.transaction(async (tx) =\u003e {\n    await tx.run('INSERT INTO accounts (name, balance) VALUES (?, ?)', ['Alice', 1000]);\n    await tx.run('INSERT INTO accounts (name, balance) VALUES (?, ?)', ['Bob', 500]);\n    await tx.run('UPDATE accounts SET balance = balance - 100 WHERE name = ?', ['Alice']);\n    await tx.run('UPDATE accounts SET balance = balance + 100 WHERE name = ?', ['Bob']);\n  });\n  console.log('Transaction successful!');\n} catch (error) {\n  console.error('Transaction failed:', error);\n}\n```\n\n### Batch Operations\n\n```typescript\nconst db = await FastSQL.connect({ database: 'myapp' });\n\nconst results = await db.executeBatch([\n  { statement: 'INSERT INTO logs (message) VALUES (?)', params: ['Log 1'] },\n  { statement: 'INSERT INTO logs (message) VALUES (?)', params: ['Log 2'] },\n  { statement: 'INSERT INTO logs (message) VALUES (?)', params: ['Log 3'] },\n]);\n```\n\n### Key-Value Storage (Mobile-focused)\n\n```typescript\nimport { KeyValueStore } from '@capgo/capacitor-fast-sql';\n\nconst kv = await KeyValueStore.open({\n  database: 'myapp',\n  encrypted: true,\n  encryptionKey: 'super-secret-key',\n});\n\nawait kv.set('session', { token: 'abc123', expiresAt: 1710000000 });\nconst session = await kv.get('session');\nawait kv.remove('session');\n```\n\n\u003e Note: Web support is intended for minimal testing only. The primary focus is iOS/Android.\n\n## API\n\n\u003cdocgen-index\u003e\n\n* [`connect(...)`](#connect)\n* [`disconnect(...)`](#disconnect)\n* [`getServerInfo(...)`](#getserverinfo)\n* [`execute(...)`](#execute)\n* [`beginTransaction(...)`](#begintransaction)\n* [`commitTransaction(...)`](#committransaction)\n* [`rollbackTransaction(...)`](#rollbacktransaction)\n* [`getPluginVersion()`](#getpluginversion)\n* [Interfaces](#interfaces)\n* [Type Aliases](#type-aliases)\n* [Enums](#enums)\n\n\u003c/docgen-index\u003e\n\n\u003cdocgen-api\u003e\n\u003c!--Update the source file JSDoc comments and rerun docgen to update the docs below--\u003e\n\nFast SQL Plugin for high-performance SQLite database access.\n\nThis plugin uses a custom HTTP-based protocol for efficient data transfer,\nbypassing Capacitor's standard bridge for better performance with sync operations.\n\n### connect(...)\n\n```typescript\nconnect(options: SQLConnectionOptions) =\u003e Promise\u003c{ port: number; token: string; database: string; }\u003e\n```\n\nInitialize the database connection and start the HTTP server.\n\n| Param         | Type                                                                  | Description          |\n| ------------- | --------------------------------------------------------------------- | -------------------- |\n| **`options`** | \u003ccode\u003e\u003ca href=\"#sqlconnectionoptions\"\u003eSQLConnectionOptions\u003c/a\u003e\u003c/code\u003e | - Connection options |\n\n**Returns:** \u003ccode\u003ePromise\u0026lt;{ port: number; token: string; database: string; }\u0026gt;\u003c/code\u003e\n\n**Since:** 0.0.1\n\n--------------------\n\n\n### disconnect(...)\n\n```typescript\ndisconnect(options: { database: string; }) =\u003e Promise\u003cvoid\u003e\n```\n\nClose database connection and stop the HTTP server.\n\n| Param         | Type                               | Description              |\n| ------------- | ---------------------------------- | ------------------------ |\n| **`options`** | \u003ccode\u003e{ database: string; }\u003c/code\u003e | - Database name to close |\n\n**Since:** 0.0.1\n\n--------------------\n\n\n### getServerInfo(...)\n\n```typescript\ngetServerInfo(options: { database: string; }) =\u003e Promise\u003c{ port: number; token: string; }\u003e\n```\n\nGet the HTTP server port and token for direct communication.\n\n| Param         | Type                               | Description     |\n| ------------- | ---------------------------------- | --------------- |\n| **`options`** | \u003ccode\u003e{ database: string; }\u003c/code\u003e | - Database name |\n\n**Returns:** \u003ccode\u003ePromise\u0026lt;{ port: number; token: string; }\u0026gt;\u003c/code\u003e\n\n**Since:** 0.0.1\n\n--------------------\n\n\n### execute(...)\n\n```typescript\nexecute(options: { database: string; statement: string; params?: SQLValue[]; }) =\u003e Promise\u003cSQLResult\u003e\n```\n\nExecute a SQL query via Capacitor bridge (for simple queries).\nFor better performance with large datasets, use the HTTP protocol directly via SQLConnection class.\n\n| Param         | Type                                                                       | Description        |\n| ------------- | -------------------------------------------------------------------------- | ------------------ |\n| **`options`** | \u003ccode\u003e{ database: string; statement: string; params?: SQLValue[]; }\u003c/code\u003e | - Query parameters |\n\n**Returns:** \u003ccode\u003ePromise\u0026lt;\u003ca href=\"#sqlresult\"\u003eSQLResult\u003c/a\u003e\u0026gt;\u003c/code\u003e\n\n**Since:** 0.0.1\n\n--------------------\n\n\n### beginTransaction(...)\n\n```typescript\nbeginTransaction(options: { database: string; isolationLevel?: IsolationLevel; }) =\u003e Promise\u003cvoid\u003e\n```\n\nBegin a database transaction.\n\n| Param         | Type                                                                                              | Description           |\n| ------------- | ------------------------------------------------------------------------------------------------- | --------------------- |\n| **`options`** | \u003ccode\u003e{ database: string; isolationLevel?: \u003ca href=\"#isolationlevel\"\u003eIsolationLevel\u003c/a\u003e; }\u003c/code\u003e | - Transaction options |\n\n**Since:** 0.0.1\n\n--------------------\n\n\n### commitTransaction(...)\n\n```typescript\ncommitTransaction(options: { database: string; }) =\u003e Promise\u003cvoid\u003e\n```\n\nCommit the current transaction.\n\n| Param         | Type                               | Description     |\n| ------------- | ---------------------------------- | --------------- |\n| **`options`** | \u003ccode\u003e{ database: string; }\u003c/code\u003e | - Database name |\n\n**Since:** 0.0.1\n\n--------------------\n\n\n### rollbackTransaction(...)\n\n```typescript\nrollbackTransaction(options: { database: string; }) =\u003e Promise\u003cvoid\u003e\n```\n\nRollback the current transaction.\n\n| Param         | Type                               | Description     |\n| ------------- | ---------------------------------- | --------------- |\n| **`options`** | \u003ccode\u003e{ database: string; }\u003c/code\u003e | - Database name |\n\n**Since:** 0.0.1\n\n--------------------\n\n\n### getPluginVersion()\n\n```typescript\ngetPluginVersion() =\u003e Promise\u003c{ version: string; }\u003e\n```\n\nGet the native Capacitor plugin version.\n\n**Returns:** \u003ccode\u003ePromise\u0026lt;{ version: string; }\u0026gt;\u003c/code\u003e\n\n**Since:** 0.0.1\n\n--------------------\n\n\n### Interfaces\n\n\n#### SQLConnectionOptions\n\nDatabase connection options\n\n| Prop                | Type                 | Description                                                |\n| ------------------- | -------------------- | ---------------------------------------------------------- |\n| **`database`**      | \u003ccode\u003estring\u003c/code\u003e  | Database name (file will be created in app data directory) |\n| **`encrypted`**     | \u003ccode\u003eboolean\u003c/code\u003e | Enable encryption (iOS/Android only)                       |\n| **`encryptionKey`** | \u003ccode\u003estring\u003c/code\u003e  | Encryption key (required if encrypted is true)             |\n| **`readOnly`**      | \u003ccode\u003eboolean\u003c/code\u003e | Read-only mode                                             |\n\n\n#### SQLResult\n\nResult of a SQL query execution\n\n| Prop               | Type                  | Description                                                             |\n| ------------------ | --------------------- | ----------------------------------------------------------------------- |\n| **`rows`**         | \u003ccode\u003eSQLRow[]\u003c/code\u003e | Rows returned by the query (for SELECT statements)                      |\n| **`rowsAffected`** | \u003ccode\u003enumber\u003c/code\u003e   | Number of rows affected by the query (for INSERT/UPDATE/DELETE)         |\n| **`insertId`**     | \u003ccode\u003enumber\u003c/code\u003e   | ID of the last inserted row (for INSERT statements with auto-increment) |\n\n\n#### SQLRow\n\nSQL row result - values indexed by column name\n\n\n#### Uint8Array\n\nA typed array of 8-bit unsigned integer values. The contents are initialized to 0. If the\r\nrequested number of bytes could not be allocated an exception is raised.\n\n| Prop                    | Type                                                        | Description                                                                  |\n| ----------------------- | ----------------------------------------------------------- | ---------------------------------------------------------------------------- |\n| **`BYTES_PER_ELEMENT`** | \u003ccode\u003enumber\u003c/code\u003e                                         | The size in bytes of each element in the array.                              |\n| **`buffer`**            | \u003ccode\u003e\u003ca href=\"#arraybufferlike\"\u003eArrayBufferLike\u003c/a\u003e\u003c/code\u003e | The \u003ca href=\"#arraybuffer\"\u003eArrayBuffer\u003c/a\u003e instance referenced by the array. |\n| **`byteLength`**        | \u003ccode\u003enumber\u003c/code\u003e                                         | The length in bytes of the array.                                            |\n| **`byteOffset`**        | \u003ccode\u003enumber\u003c/code\u003e                                         | The offset in bytes of the array.                                            |\n| **`length`**            | \u003ccode\u003enumber\u003c/code\u003e                                         | The length of the array.                                                     |\n\n| Method             | Signature                                                                                                                                                                      | Description                                                                                                                                                                                                                                 |\n| ------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| **copyWithin**     | (target: number, start: number, end?: number \\| undefined) =\u0026gt; this                                                                                                          | Returns the this object after copying a section of the array identified by start and end to the same array starting at position target                                                                                                      |\n| **every**          | (predicate: (value: number, index: number, array: \u003ca href=\"#uint8array\"\u003eUint8Array\u003c/a\u003e) =\u0026gt; unknown, thisArg?: any) =\u0026gt; boolean                                            | Determines whether all the members of an array satisfy the specified test.                                                                                                                                                                  |\n| **fill**           | (value: number, start?: number \\| undefined, end?: number \\| undefined) =\u0026gt; this                                                                                             | Returns the this object after filling the section identified by start and end with value                                                                                                                                                    |\n| **filter**         | (predicate: (value: number, index: number, array: \u003ca href=\"#uint8array\"\u003eUint8Array\u003c/a\u003e) =\u0026gt; any, thisArg?: any) =\u0026gt; \u003ca href=\"#uint8array\"\u003eUint8Array\u003c/a\u003e                   | Returns the elements of an array that meet the condition specified in a callback function.                                                                                                                                                  |\n| **find**           | (predicate: (value: number, index: number, obj: \u003ca href=\"#uint8array\"\u003eUint8Array\u003c/a\u003e) =\u0026gt; boolean, thisArg?: any) =\u0026gt; number \\| undefined                                  | Returns the value of the first element in the array where predicate is true, and undefined otherwise.                                                                                                                                       |\n| **findIndex**      | (predicate: (value: number, index: number, obj: \u003ca href=\"#uint8array\"\u003eUint8Array\u003c/a\u003e) =\u0026gt; boolean, thisArg?: any) =\u0026gt; number                                               | Returns the index of the first element in the array where predicate is true, and -1 otherwise.                                                                                                                                              |\n| **forEach**        | (callbackfn: (value: number, index: number, array: \u003ca href=\"#uint8array\"\u003eUint8Array\u003c/a\u003e) =\u0026gt; void, thisArg?: any) =\u0026gt; void                                                 | Performs the specified action for each element in an array.                                                                                                                                                                                 |\n| **indexOf**        | (searchElement: number, fromIndex?: number \\| undefined) =\u0026gt; number                                                                                                          | Returns the index of the first occurrence of a value in an array.                                                                                                                                                                           |\n| **join**           | (separator?: string \\| undefined) =\u0026gt; string                                                                                                                                 | Adds all the elements of an array separated by the specified separator string.                                                                                                                                                              |\n| **lastIndexOf**    | (searchElement: number, fromIndex?: number \\| undefined) =\u0026gt; number                                                                                                          | Returns the index of the last occurrence of a value in an array.                                                                                                                                                                            |\n| **map**            | (callbackfn: (value: number, index: number, array: \u003ca href=\"#uint8array\"\u003eUint8Array\u003c/a\u003e) =\u0026gt; number, thisArg?: any) =\u0026gt; \u003ca href=\"#uint8array\"\u003eUint8Array\u003c/a\u003e               | Calls a defined callback function on each element of an array, and returns an array that contains the results.                                                                                                                              |\n| **reduce**         | (callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: \u003ca href=\"#uint8array\"\u003eUint8Array\u003c/a\u003e) =\u0026gt; number) =\u0026gt; number                       | Calls the specified callback function for all the elements in an array. The return value of the callback function is the accumulated result, and is provided as an argument in the next call to the callback function.                      |\n| **reduce**         | (callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: \u003ca href=\"#uint8array\"\u003eUint8Array\u003c/a\u003e) =\u0026gt; number, initialValue: number) =\u0026gt; number |                                                                                                                                                                                                                                             |\n| **reduce**         | \u0026lt;U\u0026gt;(callbackfn: (previousValue: U, currentValue: number, currentIndex: number, array: \u003ca href=\"#uint8array\"\u003eUint8Array\u003c/a\u003e) =\u0026gt; U, initialValue: U) =\u0026gt; U            | Calls the specified callback function for all the elements in an array. The return value of the callback function is the accumulated result, and is provided as an argument in the next call to the callback function.                      |\n| **reduceRight**    | (callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: \u003ca href=\"#uint8array\"\u003eUint8Array\u003c/a\u003e) =\u0026gt; number) =\u0026gt; number                       | Calls the specified callback function for all the elements in an array, in descending order. The return value of the callback function is the accumulated result, and is provided as an argument in the next call to the callback function. |\n| **reduceRight**    | (callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: \u003ca href=\"#uint8array\"\u003eUint8Array\u003c/a\u003e) =\u0026gt; number, initialValue: number) =\u0026gt; number |                                                                                                                                                                                                                                             |\n| **reduceRight**    | \u0026lt;U\u0026gt;(callbackfn: (previousValue: U, currentValue: number, currentIndex: number, array: \u003ca href=\"#uint8array\"\u003eUint8Array\u003c/a\u003e) =\u0026gt; U, initialValue: U) =\u0026gt; U            | Calls the specified callback function for all the elements in an array, in descending order. The return value of the callback function is the accumulated result, and is provided as an argument in the next call to the callback function. |\n| **reverse**        | () =\u0026gt; \u003ca href=\"#uint8array\"\u003eUint8Array\u003c/a\u003e                                                                                                                                  | Reverses the elements in an Array.                                                                                                                                                                                                          |\n| **set**            | (array: \u003ca href=\"#arraylike\"\u003eArrayLike\u003c/a\u003e\u0026lt;number\u0026gt;, offset?: number \\| undefined) =\u0026gt; void                                                                             | Sets a value or an array of values.                                                                                                                                                                                                         |\n| **slice**          | (start?: number \\| undefined, end?: number \\| undefined) =\u0026gt; \u003ca href=\"#uint8array\"\u003eUint8Array\u003c/a\u003e                                                                            | Returns a section of an array.                                                                                                                                                                                                              |\n| **some**           | (predicate: (value: number, index: number, array: \u003ca href=\"#uint8array\"\u003eUint8Array\u003c/a\u003e) =\u0026gt; unknown, thisArg?: any) =\u0026gt; boolean                                            | Determines whether the specified callback function returns true for any element of an array.                                                                                                                                                |\n| **sort**           | (compareFn?: ((a: number, b: number) =\u0026gt; number) \\| undefined) =\u0026gt; this                                                                                                    | Sorts an array.                                                                                                                                                                                                                             |\n| **subarray**       | (begin?: number \\| undefined, end?: number \\| undefined) =\u0026gt; \u003ca href=\"#uint8array\"\u003eUint8Array\u003c/a\u003e                                                                            | Gets a new \u003ca href=\"#uint8array\"\u003eUint8Array\u003c/a\u003e view of the \u003ca href=\"#arraybuffer\"\u003eArrayBuffer\u003c/a\u003e store for this array, referencing the elements at begin, inclusive, up to end, exclusive.                                                |\n| **toLocaleString** | () =\u0026gt; string                                                                                                                                                                | Converts a number to a string by using the current locale.                                                                                                                                                                                  |\n| **toString**       | () =\u0026gt; string                                                                                                                                                                | Returns a string representation of an array.                                                                                                                                                                                                |\n| **valueOf**        | () =\u0026gt; \u003ca href=\"#uint8array\"\u003eUint8Array\u003c/a\u003e                                                                                                                                  | Returns the primitive value of the specified object.                                                                                                                                                                                        |\n\n\n#### ArrayLike\n\n| Prop         | Type                |\n| ------------ | ------------------- |\n| **`length`** | \u003ccode\u003enumber\u003c/code\u003e |\n\n\n#### ArrayBufferTypes\n\nAllowed \u003ca href=\"#arraybuffer\"\u003eArrayBuffer\u003c/a\u003e types for the buffer of an ArrayBufferView and related Typed Arrays.\n\n| Prop              | Type                                                |\n| ----------------- | --------------------------------------------------- |\n| **`ArrayBuffer`** | \u003ccode\u003e\u003ca href=\"#arraybuffer\"\u003eArrayBuffer\u003c/a\u003e\u003c/code\u003e |\n\n\n#### ArrayBuffer\n\nRepresents a raw buffer of binary data, which is used to store data for the\r\ndifferent typed arrays. ArrayBuffers cannot be read from or written to directly,\r\nbut can be passed to a typed array or DataView Object to interpret the raw\r\nbuffer as needed.\n\n| Prop             | Type                | Description                                                                     |\n| ---------------- | ------------------- | ------------------------------------------------------------------------------- |\n| **`byteLength`** | \u003ccode\u003enumber\u003c/code\u003e | Read-only. The length of the \u003ca href=\"#arraybuffer\"\u003eArrayBuffer\u003c/a\u003e (in bytes). |\n\n| Method    | Signature                                                                               | Description                                                     |\n| --------- | --------------------------------------------------------------------------------------- | --------------------------------------------------------------- |\n| **slice** | (begin: number, end?: number \\| undefined) =\u0026gt; \u003ca href=\"#arraybuffer\"\u003eArrayBuffer\u003c/a\u003e | Returns a section of an \u003ca href=\"#arraybuffer\"\u003eArrayBuffer\u003c/a\u003e. |\n\n\n### Type Aliases\n\n\n#### SQLValue\n\nSQL value types supported by the plugin\n\n\u003ccode\u003estring | number | boolean | null | \u003ca href=\"#uint8array\"\u003eUint8Array\u003c/a\u003e\u003c/code\u003e\n\n\n#### ArrayBufferLike\n\n\u003ccode\u003eArrayBufferTypes[keyof ArrayBufferTypes]\u003c/code\u003e\n\n\n### Enums\n\n\n#### IsolationLevel\n\n| Members               | Value                           |\n| --------------------- | ------------------------------- |\n| **`ReadUncommitted`** | \u003ccode\u003e'READ UNCOMMITTED'\u003c/code\u003e |\n| **`ReadCommitted`**   | \u003ccode\u003e'READ COMMITTED'\u003c/code\u003e   |\n| **`RepeatableRead`**  | \u003ccode\u003e'REPEATABLE READ'\u003c/code\u003e  |\n| **`Serializable`**    | \u003ccode\u003e'SERIALIZABLE'\u003c/code\u003e     |\n\n\u003c/docgen-api\u003e\n","funding_links":["https://github.com/sponsors/Cap-go","https://opencollective.com/capgo"],"categories":["Capgo Capacitor Plugins","[Capgo plugins](https://capgo.app/)"],"sub_categories":["Storage \u0026 Files"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FCap-go%2Fcapacitor-fast-sql","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FCap-go%2Fcapacitor-fast-sql","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FCap-go%2Fcapacitor-fast-sql/lists"}