<?php

namespace Edulab\College\Providers;

use Illuminate\Contracts\Auth\Access\Gate as GateContract;
use Illuminate\Foundation\Support\Providers\AuthServiceProvider as ServiceProvider;

class AuthServiceProvider extends ServiceProvider
{
    /**
     * The policy mappings for the package.
     *
     * @var array
     */
    protected $policies = [
        // Bind College policy
        \Edulab\College\Models\College::class 
        => \Edulab\College\Policies\CollegePolicy::class,// Bind Student policy
        \Edulab\College\Models\Student::class 
        => \Edulab\College\Policies\StudentPolicy::class,// Bind Guardian policy
        \Edulab\College\Models\Guardian::class 
        => \Edulab\College\Policies\GuardianPolicy::class,// Bind Teacher policy
        \Edulab\College\Models\Teacher::class 
        => \Edulab\College\Policies\TeacherPolicy::class,
    ];

    /**
     * Register any package authentication / authorization services.
     *
     * @param \Illuminate\Contracts\Auth\Access\Gate $gate
     *
     * @return void
     */
    public function boot(GateContract $gate)
    {
        parent::registerPolicies($gate);
    }
}