feat: complete Ancestor quote bot with production-ready Docker support

This commit is contained in:
unfunny
2026-09-13 14:14:38 -04:00
parent f2016da05a
commit fe7351a7dc
1145 changed files with 30890 additions and 97684 deletions

View File

@@ -1,8 +1,7 @@
import { type User } from "./user.ts";
import { type MatrixEvent } from "./event.ts";
import { type RoomState } from "./room-state.ts";
import { TypedEventEmitter } from "./typed-event-emitter.ts";
import { type Membership } from "../@types/membership.ts";
import { User } from "./user";
import { MatrixEvent } from "./event";
import { RoomState } from "./room-state";
import { TypedEventEmitter } from "./typed-event-emitter";
export declare enum RoomMemberEvent {
Membership = "RoomMember.membership",
Name = "RoomMember.name",
@@ -44,6 +43,7 @@ export type RoomMemberEventHandlerMap = {
* ```
* matrixClient.on("RoomMember.powerLevel", function(event, member){
* var newPowerLevel = member.powerLevel;
* var newNormPowerLevel = member.powerLevelNorm;
* });
* ```
*/
@@ -72,23 +72,23 @@ export declare class RoomMember extends TypedEventEmitter<RoomMemberEvent, RoomM
*/
typing: boolean;
/**
* The human-readable name for this room member. Similar to {@link rawDisplayName}, but
* The human-readable name for this room member. This will be
* disambiguated with a suffix of " (\@user_id:matrix.org)" if another member shares the
* same displayname.
*/
name: string;
/**
* The ambiguous displayname of this room member, with some preprocessing:
*
* * Direction override characters (RTO and LRO) are removed.
* * If the displayname is empty, or contains only blank, non-printing, or diacritcic characters, it is
* replaced with the user ID.
* The ambiguous displayname of this room member.
*/
rawDisplayName: string;
/**
* The power level for this room member.
*/
powerLevel: number;
/**
* The normalised power level (0-100) for this room member.
*/
powerLevelNorm: number;
/**
* The User object for this room member, if one exists.
*/
@@ -96,7 +96,7 @@ export declare class RoomMember extends TypedEventEmitter<RoomMemberEvent, RoomM
/**
* The membership state for this room member e.g. 'join'.
*/
membership?: Membership;
membership?: string;
/**
* True if the member's name is disambiguated.
*/
@@ -140,26 +140,14 @@ export declare class RoomMember extends TypedEventEmitter<RoomMemberEvent, RoomM
*/
setMembershipEvent(event: MatrixEvent, roomState?: RoomState): void;
/**
* Recalculate the disambiguation flag for this member based on current room state.
* This should be called when another member's display name changes and may affect
* whether this member needs disambiguation.
*
* @param roomState - The current room state to use for disambiguation check
* @returns true if the member's name changed as a result of the disambiguation update
*
* @remarks
* Fires {@link RoomMemberEvent.Name}
*/
recalculateDisambiguatedName(roomState: RoomState): boolean;
/**
* Update this room member's power level event. Will fire
* "RoomMember.powerLevel" if the new power level is different
* @param powerLevel - The power level of the room member.
* Update this room member's power level event. May fire
* "RoomMember.powerLevel" if this event updates this member's power levels.
* @param powerLevelEvent - The `m.room.power_levels` event
*
* @remarks
* Fires {@link RoomMemberEvent.PowerLevel}
*/
setPowerLevel(powerLevel: number, powerLevelEvent: MatrixEvent): void;
setPowerLevelEvent(powerLevelEvent: MatrixEvent): void;
/**
* Update this room member's typing event. May fire "RoomMember.typing" if
* this event changes this member's typing state.
@@ -203,19 +191,13 @@ export declare class RoomMember extends TypedEventEmitter<RoomMemberEvent, RoomM
* If false, any non-matrix content URLs will be ignored. Setting this option to
* true will expose URLs that, if fetched, will leak information about the user
* to anyone who they share a room with.
* @param useAuthentication - (optional) If true, the caller supports authenticated
* media and wants an authentication-required URL. Note that server support for
* authenticated media will not be checked - it is the caller's responsibility
* to do so before calling this function. Note also that useAuthentication
* implies allowRedirects. Defaults to false (unauthenticated endpoints).
* @returns the avatar URL or null.
*/
getAvatarUrl(baseUrl: string, width: number, height: number, resizeMethod: string, allowDefault: boolean | undefined, allowDirectLinks: boolean, useAuthentication?: boolean): string | null;
getAvatarUrl(baseUrl: string, width: number, height: number, resizeMethod: string, allowDefault: boolean | undefined, allowDirectLinks: boolean): string | null;
/**
* get the mxc avatar url, either from a state event, or from a lazily loaded member
* @returns the mxc avatar url
*/
getMxcAvatarUrl(): string | undefined;
}
export declare const MXID_PATTERN: RegExp;
//# sourceMappingURL=room-member.d.ts.map