<?php
declare(strict_types=1);

return [
    ['GET',  '/pool',                         'PoolManagement\Controllers\PoolConfigController@index',       ['auth'], 'pool.view'],
    ['GET',  '/pool/config/create',           'PoolManagement\Controllers\PoolConfigController@create',      ['auth'], 'pool.manage'],
    ['POST', '/pool/config',                  'PoolManagement\Controllers\PoolConfigController@store',       ['auth', 'csrf'], 'pool.manage'],
    ['GET',  '/pool/config/{id:\d+}/edit',    'PoolManagement\Controllers\PoolConfigController@edit',        ['auth'], 'pool.manage'],
    ['POST', '/pool/config/{id:\d+}',         'PoolManagement\Controllers\PoolConfigController@update',      ['auth', 'csrf'], 'pool.manage'],
    ['GET',  '/pool/{id:\d+}/grid',           'PoolManagement\Controllers\PoolGridController@grid',          ['auth'], 'pool.view'],
    ['GET',  '/api/pool/{id:\d+}/state',      'PoolManagement\Controllers\PoolGridController@apiState',      ['auth'], 'pool.view'],
    ['GET',  '/pool/{id:\d+}/book',           'PoolManagement\Controllers\PoolBookingController@create',     ['auth'], 'pool.book'],
    ['POST', '/pool/{id:\d+}/book',           'PoolManagement\Controllers\PoolBookingController@store',      ['auth', 'csrf'], 'pool.book'],
    ['GET',  '/pool/bookings',                'PoolManagement\Controllers\PoolBookingController@index',      ['auth'], 'pool.view'],
    ['GET',  '/pool/bookings/{id:\d+}',       'PoolManagement\Controllers\PoolBookingController@show',       ['auth'], 'pool.view'],
    ['POST', '/pool/bookings/{id:\d+}/cancel','PoolManagement\Controllers\PoolBookingController@cancel',     ['auth', 'csrf'], 'pool.manage'],
    ['POST', '/pool/bookings/{id:\d+}/checkin','PoolManagement\Controllers\PoolBookingController@checkin',   ['auth', 'csrf'], 'pool.manage'],
];
