This module contains core definitions for the PowerSync SDK, without linking or bundling a SQLite dependency.
This allows the module to be used as a building block for PowerSync SDKs with and without encryption support.
Users should typically depend on :core instead.
This is a Kotlin Multiplatform project targeting Android, iOS platforms, with the following structure:
commonMain- Shared code for all targets, which includes thePowerSyncBackendConnectorinterface andPowerSyncBuilderfor building aPowerSyncinstance. It also defines theDatabaseDriverFactoryclass to be implemented in each platform.commonJava- Shared logic for Android and Java targets.androidMain- Android-specific code for loading the core extension.jvmMain- Java-specific code for loading the core extension.nativeMain- A SQLite driver implemented with cinterop calls to sqlite3.appleMain: Utilities for finding a suitable database location on Apple platforms.appleNonWatchOsMainandwatchosMain: Loads the PowerSync core extension (which is linked statically on watchOS and dynamically on other platforms).
This module contains attachment helpers under the com.powersync.attachments package. See
the Attachment Helpers README