> Maybe what I could do is to make SQLCipher.sync_state be a ClientSyncState object by itself, maybe code would be better organized like that?

that sounds good to me.