///
import * as tls from 'tls';
import { IAuthentication } from '../interfaces/Authentication.js';
import { ILogger } from '../interfaces/Logger.js';
interface IGoogleLDAPAuthOptions {
/** base DN
* e.g. 'dc=hokify,dc=com', */
base: string;
searchBase?: string;
tls: {
keyFile: string;
certFile: string;
};
/** tls options
* e.g. {
key: fs.readFileSync('ldap.gsuite.key'),
cert: fs.readFileSync('ldap.gsuite.crt')
} */
tlsOptions?: tls.TlsOptions;
}
export declare class GoogleLDAPAuth implements IAuthentication {
private base;
private config;
private searchBase;
private dnsFetch;
private logger;
constructor(config: IGoogleLDAPAuthOptions, logger: ILogger);
private fetchDNs;
authenticate(username: string, password: string, count?: number, forceFetching?: boolean): Promise;
}
export {};