. */ namespace SP\Domain\Auth\Ports; use SP\Providers\Auth\Ldap\AttributeCollection; use SP\Providers\Auth\Ldap\LdapException; use SP\Providers\Auth\Ldap\LdapParams; use SP\Providers\Auth\Ldap\LdapResults; /** * Class LdapActions * * @package SP\Providers\Auth\Ldap */ interface LdapActionsService { /** * Obtener el RDN del grupo. * * @param string $groupFilter * * @return array Groups' DN * @throws LdapException */ public function searchGroupsDn(string $groupFilter): array; /** * @param string $filter * * @return AttributeCollection * @throws LdapException */ public function getAttributes(string $filter): AttributeCollection; /** * Get LDAP search results * * @throws LdapException */ public function getObjects( string $filter, array $attributes = [], ?string $searchBase = null ): LdapResults; public function mutate(LdapParams $ldapParams): LdapActionsService; }