<?php

return array(
    /*
      |--------------------------------------------------------------------------
      | Filename & Format
      |--------------------------------------------------------------------------
      |
      | The default filename (without extension) and the format (php or json)
      |
     */

    'filename'        => 'ide_helper',
    'format'          => 'php',
    /*
      |--------------------------------------------------------------------------
      | Helper files to include
      |--------------------------------------------------------------------------
      |
      | Include helper files. By default not included, but can be toggled with the
      | -- helpers (-H) option. Extra helper files can be included.
      |
     */
    'include_helpers' => true,
    'helper_files'    => array(
        base_path() . '/vendor/laravel/framework/src/Illuminate/Support/helpers.php',
    ),
    /*
      |--------------------------------------------------------------------------
      | Model locations to include
      |--------------------------------------------------------------------------
      |
      | Define in which directories the ide-helper:models command should look
      | for models.
      |
     */
    'model_locations' => array(
        'app',
    ),
    /*
      |--------------------------------------------------------------------------
      | Extra classes
      |--------------------------------------------------------------------------
      |
      | These implementations are not really extended, but called with magic functions
      |
     */
    'extra'           => array(
        'Eloquent' => array('Illuminate\Database\Eloquent\Builder', 'Illuminate\Database\Query\Builder'),
        'Session'  => array('Illuminate\Session\Store'),
    ),
    'magic'           => array(
        'Log' => array(
            'debug'     => 'Monolog\Logger::addDebug',
            'info'      => 'Monolog\Logger::addInfo',
            'notice'    => 'Monolog\Logger::addNotice',
            'warning'   => 'Monolog\Logger::addWarning',
            'error'     => 'Monolog\Logger::addError',
            'critical'  => 'Monolog\Logger::addCritical',
            'alert'     => 'Monolog\Logger::addAlert',
            'emergency' => 'Monolog\Logger::addEmergency',
        )
    ),
    /*
      |--------------------------------------------------------------------------
      | Interface implementations
      |--------------------------------------------------------------------------
      |
      | These interfaces will be replaced with the implementing class. Some interfaces
      | are detected by the helpers, others can be listed below.
      |
     */
    'interfaces'      => array(
        '\Illuminate\Contracts\Auth\Authenticatable' => config('auth.model', 'Antares\Model\User'),
    ),
    /*
      |--------------------------------------------------------------------------
      | Support for custom DB types
      |--------------------------------------------------------------------------
      |
      | This setting allow you to map any custom database type (that you may have
      | created using CREATE TYPE statement or imported using database plugin
      | / extension to a Doctrine type.
      |
      | Each key in this array is a name of the Doctrine2 DBAL Platform. Currently valid names are:
      | 'postgresql', 'db2', 'drizzle', 'mysql', 'oracle', 'sqlanywhere', 'sqlite', 'mssql'
      |
      | This name is returned by getName() method of the specific Doctrine/DBAL/Platforms/AbstractPlatform descendant
      |
      | The value of the array is an array of type mappings. Key is the name of the custom type,
      | (for example, "jsonb" from Postgres 9.4) and the value is the name of the corresponding Doctrine2 type (in
      | our case it is 'json_array'. Doctrine types are listed here:
      | http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html
      |
      | So to support jsonb in your models when working with Postgres, just add the following entry to the array below:
      |
      | "postgresql" => array(
      |       "jsonb" => "json_array",
      |  ),
      |
     */
    'custom_db_types' => array(
    ),
);
