import Base from '../../Base';
import type Client from '../../Client';
import type ClientUser from '../user/ClientUser';
import type Friend from '../friend/Friend';
/**
 * Represents an incoming or outgoing party join request
 */
declare abstract class BasePartyJoinRequest extends Base {
    /**
     * The user who requested to join the party
     */
    sender: Friend | ClientUser;
    /**
     * The user who received the join request
     */
    receiver: Friend | ClientUser;
    /**
     * The creation date of the request
     */
    createdAt: Date;
    /**
     * The expiration date of the request
     */
    expiresAt: Date;
    /**
     * @param client The main client
     * @param sender The user who requested to join the party
     * @param receiver The user who received the join request
     * @param data The party confirmation data
     */
    constructor(client: Client, sender: Friend | ClientUser, receiver: Friend | ClientUser, data: any);
    /**
     * Whether this join request expired
     */
    get isExpired(): boolean;
}
export default BasePartyJoinRequest;
