class ColumnDatabaseAdapter implements DatabaseAdapter<Column<Receipt>> {

    @NonNull
    @Override
    public Column<Receipt> build(@NonNull Column<Receipt> column, int primaryKey, @NonNull UUID uuid, @NonNull DatabaseOperationMetadata databaseOperationMetadata) {
        return new ColumnBuilderFactory<>(mReceiptColumnDefinitions)
                .setColumnId(primaryKey)
                .setColumnUuid(uuid)
                .setColumnType(column.getType())
                .setSyncState(mSyncStateAdapter.get(column.getSyncState(), databaseOperationMetadata))
                .setCustomOrderId(column.getCustomOrderId())
                .build();
    }

    public  ColumnDatabaseAdapter(@NonNull ColumnDefinitions<Receipt> receiptColumnDefinitions);
    public  ColumnDatabaseAdapter(@NonNull ColumnDefinitions<Receipt> receiptColumnDefinitions, @NonNull SyncStateAdapter syncStateAdapter);

}