@class PLSQLStatement, NSString, NSMutableDictionary, NSObject; @protocol OS_dispatch_queue, OS_dispatch_semaphore; @interface PLSQLiteConnection : NSObject @property struct sqlite3 { } *dbConnection; @property (retain) NSObject<OS_dispatch_semaphore> *dbSem; @property (retain) NSMutableDictionary *preparedStatements; @property (retain) NSMutableDictionary *preparedUpdateStatements; @property (retain) NSMutableDictionary *preparedDynamicStatements; @property int transactionInProgress; @property (retain) NSString *transactionLock; @property (retain) NSString *cachedClassName; @property int entryCacheStorageSize; @property long long cacheSize; @property BOOL metadataStmtCreated; @property (retain) PLSQLStatement *metadataStmt; @property (readonly) NSObject<OS_dispatch_queue> *workQueue; @property (copy, nonatomic) NSString *filePath; + (id)versionForTable:(id)a0; + (double)periodicIntegrityCheckInterval; + (id)tableHasTimestampColumnSem; + (id)sharedSQLiteConnection; + (id)tableHasTimestampColumn; + (void)removeDBAtFilePath:(id)a0; + (void)removeAdditionalFiles:(id)a0; + (id)masterTableForTable:(id)a0 andType:(id)a1; - (void)vacuum; - (void)beginTransaction; - (void)closeConnection; - (void)trimAllTablesFromDate:(id)a0 toDate:(id)a1 withTableFilters:(id)a2; - (BOOL)copyDatabase:(id)a0; - (void)deleteEntryForKey:(id)a0 withRowID:(long long)a1; - (id)cachedStatementForMetadataInsert; - (void)deleteAllEntriesForKey:(id)a0 withFilters:(id)a1; - (id)init; - (int)bindEntry:(id)a0 toPreparedStatement:(id)a1 atBindPosition:(int)a2; - (void)dealloc; - (void)endTransaction; - (void)writeDynamicEntries:(id)a0; - (void)setAllNullValuesForEntryKey:(id)a0 forKey:(id)a1 toValue:(id)a2 withFilters:(id)a3; - (id)initWithFilePath:(id)a0; - (BOOL)isTransactionInProgress; - (void)freeMetadataState; - (void)runTrimQuery:(id)a0; - (BOOL)copyDatabaseToPath:(id)a0; - (void)deleteDynamicEntriesForKey:(id)a0 withRowID:(long long)a1; - (void)setSchemaVersion:(double)a0 forTableName:(id)a1; - (BOOL)copyDatabaseToPath:(id)a0 fromDate:(id)a1 toDate:(id)a2 withTableFilters:(id)a3 vacuumDB:(BOOL)a4 withCacheSize:(long long)a5; - (int)rowCountForTableName:(id)a0; - (id)performQuery:(id)a0 returnValue:(int *)a1 returnResult:(BOOL)a2; - (BOOL)copyTable:(id)a0 fromConnection:(id)a1 withDBName:(id)a2 withProperties:(id)a3 andAttach:(BOOL)a4; - (BOOL)attachDB:(id)a0 withName:(id)a1; - (void)mergeDataFromOtherDBFile:(id)a0; - (id)initWithFilePath:(id)a0 withFlags:(id)a1; - (id)sqlPropertiesAsString:(id)a0; - (id)versionHashForTable:(id)a0; - (BOOL)copyDatabaseToPath:(id)a0 fromDate:(id)a1 toDate:(id)a2 withTableFilters:(id)a3 vacuumDB:(BOOL)a4; - (void)printDBStatusString; - (void)writeArrayEntries:(id)a0; - (BOOL)openCurrentFileWithCacheSize:(long long)a0 withFlags:(id)a1; - (void)createIndexOnTable:(id)a0 forColumn:(id)a1; - (void)removeTableNameFromMergeDB:(id)a0; - (void)createCompositeIndexOnTable:(id)a0 forColumns:(id)a1; - (void)setJournalMode:(short)a0; - (void)fullVacuum; - (id)tableInfo:(id)a0; - (void)trimTable:(id)a0 fromDate:(id)a1 withFilter:(id)a2 withTrimLimit:(long long)a3; - (void)removeIDIndexes; - (BOOL)isIncrementalVacuumEnabled; - (BOOL)copyDatabaseToPath:(id)a0 fromDate:(id)a1 toDate:(id)a2; - (int)rowCountForTable:(id)a0; - (void)createTableName:(id)a0 withColumns:(id)a1; - (id)entriesForKey:(id)a0 withQuery:(id)a1; - (id)performStatement:(id)a0; - (BOOL)passesIntegrityCheck; - (BOOL)checkEmptyMasterTable:(id)a0; - (id)getIntegrityCheckCriteria; - (void)loadArrayValuesIntoEntry:(id)a0; - (id)performQuery:(id)a0; - (void)deleteArrayEntriesForKey:(id)a0 withRowID:(long long)a1; - (BOOL)openCurrentFile; - (void).cxx_destruct; - (void)enumerateAllTablesWithBlock:(id /* block */)a0; - (void)removeEmptyOldTables; - (void)clearTableHasTimestampColumnCache; - (double)schemaVersionForTable:(id)a0; - (void)scheduleIntegrityCheck; - (void)dropTables:(id)a0; - (id)sqlFormatedColumnNamesForTableInsert:(id)a0; - (void)buildColumnInsert:(id *)a0 andValueInsert:(id *)a1 forEntry:(id)a2; - (BOOL)tableHasTimestampColumn:(id)a0; - (id)initWithFilePath:(id)a0 withCacheSize:(long long)a1; - (void)enumerateTablesWithBlock:(id /* block */)a0; - (BOOL)commonInitProcessWithFilePath:(id)a0 withCacheSize:(long long)a1; - (void)dropTable:(id)a0; - (id)sqlFormatedColumnNamesForTableSelect:(id)a0 withSystemOffset:(double)a1; - (void)displaySchema:(id)a0; - (void)moveDatabaseToPath:(id)a0; - (int)getCacheSpillValue; - (BOOL)copyTable:(id)a0 fromDBName:(id)a1 withProperties:(id)a2; - (id)entriesForKey:(id)a0 withProperties:(id)a1; - (long long)writeEntry:(id)a0; - (void)writeMetadata:(id)a0 forFKID:(id)a1 build:(id)a2 name:(id)a3 version:(double)a4; - (void)loadDynamicValuesIntoEntry:(id)a0; - (BOOL)tableExistsForTableName:(id)a0; - (void)updateEntry:(id)a0; - (id)initWithFilePath:(id)a0 withCacheSize:(long long)a1 withFlags:(id)a2; - (BOOL)detachDB:(id)a0; - (BOOL)openCurrentFileWithCacheSize:(long long)a0; - (void)setVersionHash:(id)a0 forTableName:(id)a1; - (void)trimAllTablesFromDate:(id)a0 toDate:(id)a1; - (void)hashEntryKeyKeys:(id)a0; @end