<commit_before>import Database from './Database';
import Adapter from './Adapter';
import Collection from './Collection';
import Model from './Model';
import Behavior from './Behavior';
import Query from './Query';
import P from './Promise';

import collectionFactory from './common/collectionFactory';
import modelFactory from './common/modelFactory';
import behaviorFactory from './common/behaviorFactory';

export default {
  Database,
  Adapter,
  Collection,
  Model,
  Behavior,
  Query,

  Promise: P,

  createCollection: collectionFactory(),
  createModel: modelFactory(),
  createBehavior: behaviorFactory()
};<commit_msg>expose core classes from main entry.<commit_after>import Database from './Database';
import Adapter from './Adapter';
import Collection from './Collection';
import Model from './Model';
import Behavior from './Behavior';
import Query from './Query';
import Expression from './Expression';
import Functions from './Functions';
import Schema from './Schema';
import Promise from './Promise';

import collectionFactory from './common/collectionFactory';
import modelFactory from './common/modelFactory';
import behaviorFactory from './common/behaviorFactory';

export default {
  Database,
  Adapter,

  Collection,
  Model,
  Behavior,

  Query,
  Expression,
  Functions,
  Schema,

  Promise,

  createCollection: collectionFactory(),
  createModel: modelFactory(),
  createBehavior: behaviorFactory()
};
{'fraction_non_alphanumeric': 0.12116991643454039, 'fraction_numerical': 0.0, 'mean_word_length': 4.91358024691358, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2792090', 'n_tokens_mistral': 358, 'n_tokens_neox': 341, 'n_words': 131}