2024-06-05 15:35:46 +02:00
|
|
|
<?php
|
|
|
|
|
|
|
|
|
|
namespace App\Integrations\OAuth\Drivers\Contracts;
|
|
|
|
|
|
|
|
|
|
use Laravel\Socialite\Contracts\User;
|
|
|
|
|
|
|
|
|
|
interface OAuthDriver
|
|
|
|
|
{
|
|
|
|
|
public function getRedirectUrl(): string;
|
2024-08-29 13:28:02 +02:00
|
|
|
public function setRedirectUrl(string $url): self;
|
|
|
|
|
public function setScopes(array $scopes): self;
|
2024-06-05 15:35:46 +02:00
|
|
|
public function getUser(): User;
|
2024-08-19 15:22:57 +02:00
|
|
|
public function canCreateUser(): bool;
|
2024-08-29 13:28:02 +02:00
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Set up all the scopes required by OpnForm for various integrations.
|
|
|
|
|
* This method configures the necessary permissions for the current OAuth driver.
|
|
|
|
|
*/
|
|
|
|
|
public function fullScopes(): self;
|
2024-06-05 15:35:46 +02:00
|
|
|
}
|