getInviteLinkInfo(linkUrl, callback) {
		return StdLib.Promises.timeoutCallbackPromise(10000, null, callback, (resolve, reject) => {
			let match = linkUrl.match(/^https?:\/\/s\.team\/chat\/([^/]+)$/);
			if (!match) {
				return reject(new Error('Invalid invite link'));
			}

			this.user._sendUnified('ChatRoom.GetInviteLinkInfo#1', {invite_code: match[1]}, (body, hdr) => {
				if (hdr.proto.eresult == EResult.InvalidParam) {
					let err = new Error('Invalid invite link');
					err.eresult = hdr.proto.eresult;
					return reject(err);
				}

				let err = Helpers.eresultError(hdr.proto);
				if (err) {
					return reject(err);
				}

				body = preProcessObject(body);
				if (Math.floor(body.time_expires / 1000) == Math.pow(2, 31) - 1) {
					body.time_expires = null;
				}

				body.group_summary = processChatGroupSummary(body.group_summary, true);
				body.user_chat_group_state = body.user_chat_group_state ? processUserChatGroupState(body.user_chat_group_state, true) : null;
				body.banned = !!body.banned;
				body.invite_code = match[1];
				resolve(body);
			});
		});
	}
Get details from a chat group invite link.
@param {string} linkUrl
@param {function} [callback]
@returns {Promise<{invite_code: string, steamid_sender: SteamID, time_expires: Date|null, group_summary: ChatRoomGroupSummary, time_kick_expire: Date|null, banned: boolean}>}