import AuthSession from './AuthSession';
import { AuthSessionType } from '../../resources/enums';
import type Client from '../Client';
import type { FortniteAuthData } from '../../resources/structs';
/**
 * Represents an auth session
 */
declare class FortniteAuthSession extends AuthSession<AuthSessionType.Fortnite> {
    /**
     * The app name
     */
    app: string;
    /**
     * The clients service
     */
    clientsService: string;
    /**
     * The account's display name
     */
    displayName: string;
    /**
     * Whether the client is internal
     */
    isInternalClient: boolean;
    /**
     * The account's in-app id
     */
    inAppId: string;
    /**
     * The device id
     */
    deviceId: string;
    /**
     * The refresh token
     */
    refreshToken: string;
    /**
     * The time when the refresh token expires
     */
    refreshTokenExpiresAt: Date;
    /**
     * The refresh timeout
     */
    refreshTimeout?: any;
    constructor(client: Client, data: FortniteAuthData, clientSecret: string);
    verify(forceVerify?: boolean): Promise<boolean>;
    createExchangeCode(): Promise<string>;
    revoke(): Promise<void>;
    refresh(): Promise<void>;
    initRefreshTimeout(): void;
    static create(client: Client, clientId: string, clientSecret: string, data: any): Promise<FortniteAuthSession>;
}
export default FortniteAuthSession;
