// tslint:disable:no-implicit-dependencies no-console
import { chevre } from '../../../lib/index';

import * as  mongoose from 'mongoose';

// const project = { id: String(process.env.PROJECT_ID) };

mongoose.Model.on('index', (...args) => {
    console.error('******** index event emitted. ********\n', args);
});

async function main() {
    await mongoose.connect(<string>process.env.MONGOLAB_URI, { autoIndex: false });

    const actionRepo = await chevre.repository.Action.createInstance(mongoose.connection);
    const actions = await actionRepo.searchBySameAs({
        sameAs: { id: { $eq: '662456a40e9f9ad3b50f1481' } },
        typeOf: { $eq: chevre.factory.actionType.AuthorizeAction }
    });
    console.log('actions:', actions);
}

main()
    .then(() => {
        console.log('success!');
    })
    .catch(console.error);
