import type { Moderation as _Moderation, AboutLocationRequest, AboutLogRequest, AcceptModeratorInviteRequest, BasicModerationIdRequest, DistinguishRequest, Metadata, RemoveRequest, SnoozeReportsRequest, StylesheetRequest, UpdateCrowdControlLevelRequest } from '@devvit/protos';
import { AboutLogResponse, InfoRequest, JsonRedditObjects, JsonStatus, Listing } from '@devvit/protos';
import { Empty } from '@devvit/protos/types/google/protobuf/empty.js';
import { StringValue } from '@devvit/protos/types/google/protobuf/wrappers.js';
import { RedditAPI } from './RedditAPI.js';
export declare class Moderation extends RedditAPI implements _Moderation {
    protected _getSubredditNameFromMetadata(metadata: Metadata): Promise<string>;
    protected _info(request: InfoRequest, metadata: Metadata): Promise<Listing>;
    protected validateSubreddit(subreddit: string | undefined, metadata: Metadata): Promise<boolean>;
    protected validateContent(id: string, metadata: Metadata): Promise<boolean>;
    AboutLog(request: AboutLogRequest, metadata: Metadata): Promise<AboutLogResponse>;
    AboutLocation(request: AboutLocationRequest, metadata: Metadata): Promise<Listing>;
    AboutReports(request: AboutLocationRequest, metadata: Metadata): Promise<Listing>;
    AboutSpam(request: AboutLocationRequest, metadata: Metadata): Promise<Listing>;
    AboutModqueue(request: AboutLocationRequest, metadata: Metadata): Promise<Listing>;
    AboutUnmoderated(request: AboutLocationRequest, metadata: Metadata): Promise<Listing>;
    AboutEdited(request: AboutLocationRequest, metadata: Metadata): Promise<Listing>;
    AcceptModeratorInvite(request: AcceptModeratorInviteRequest, metadata: Metadata): Promise<JsonStatus>;
    Approve(request: BasicModerationIdRequest, metadata: Metadata): Promise<Empty>;
    Distinguish(request: DistinguishRequest, metadata: Metadata): Promise<JsonRedditObjects>;
    IgnoreReports(request: BasicModerationIdRequest, metadata: Metadata): Promise<Empty>;
    LeaveContributor(request: BasicModerationIdRequest, metadata: Metadata): Promise<Empty>;
    LeaveModerator(request: BasicModerationIdRequest, metadata: Metadata): Promise<Empty>;
    MuteMessageAuthor(request: BasicModerationIdRequest, metadata: Metadata): Promise<Empty>;
    Remove(request: RemoveRequest, metadata: Metadata): Promise<Empty>;
    ShowComment(request: BasicModerationIdRequest, metadata: Metadata): Promise<Empty>;
    SnoozeReports(request: SnoozeReportsRequest, metadata: Metadata): Promise<Empty>;
    UnignoreReports(request: BasicModerationIdRequest, metadata: Metadata): Promise<Empty>;
    UnmuteMessageAuthor(request: BasicModerationIdRequest, metadata: Metadata): Promise<Empty>;
    UnsnoozeReports(request: SnoozeReportsRequest, metadata: Metadata): Promise<Empty>;
    UpdateCrowdControlLevel(request: UpdateCrowdControlLevelRequest, metadata: Metadata): Promise<Empty>;
    Stylesheet(request: StylesheetRequest, metadata: Metadata): Promise<StringValue>;
}
//# sourceMappingURL=Moderation.d.ts.map