import { CommentRequest, JsonWrappedComment, BasicIdRequest, FollowPostRequest, InfoRequest, MoreChildrenRequest, ReportRequest, ReportAwardRequest, SaveRequest, SendRepliesRequest, SetContestModeRequest, EditCustomPostRequest, SetCustomPostPreviewRequest, SetSubredditStickyRequest, SetSuggestedSortRequest, SubmitRequest, SubmitResponse, VoteRequest, GetIsPostHighlightedRequest, GetIsPostHighlightedResponse, AddPostToHighlightsRequest, AddPostToHighlightsResponse, RemovePostFromHighlightsRequest, RemovePostFromHighlightsResponse, SetCustomPostStylesRequest, GetCustomPostStylesRequest } from './linksandcomments_msg.js';
import { Empty } from '../../../../google/protobuf/empty.js';
import { Listing, JsonStatus, JsonRedditObjects } from '../common/common_msg.js';
import { CustomPostStyles } from '../../../../reddit/devvit/post/v1/post.js';
interface Rpc {
    request(service: string, method: string, contentType: 'application/json' | 'application/protobuf', data: object | Uint8Array): Promise<object | Uint8Array>;
}
export interface LinksAndCommentsClient {
    Comment(request: CommentRequest): Promise<JsonWrappedComment>;
    Del(request: BasicIdRequest): Promise<Empty>;
    EditUserText(request: CommentRequest): Promise<JsonWrappedComment>;
    FollowPost(request: FollowPostRequest): Promise<Empty>;
    Hide(request: BasicIdRequest): Promise<Empty>;
    Info(request: InfoRequest): Promise<Listing>;
    Lock(request: BasicIdRequest): Promise<Empty>;
    MarkNSFW(request: BasicIdRequest): Promise<Empty>;
    MoreChildren(request: MoreChildrenRequest): Promise<JsonWrappedComment>;
    Report(request: ReportRequest): Promise<JsonStatus>;
    ReportAward(request: ReportAwardRequest): Promise<Empty>;
    Save(request: SaveRequest): Promise<Empty>;
    SendReplies(request: SendRepliesRequest): Promise<Empty>;
    SetContestMode(request: SetContestModeRequest): Promise<JsonStatus>;
    EditCustomPost(request: EditCustomPostRequest): Promise<JsonRedditObjects>;
    SetCustomPostPreview(request: SetCustomPostPreviewRequest): Promise<Empty>;
    SetSubredditSticky(request: SetSubredditStickyRequest): Promise<JsonStatus>;
    SetSuggestedSort(request: SetSuggestedSortRequest): Promise<JsonStatus>;
    Spoiler(request: BasicIdRequest): Promise<Empty>;
    Submit(request: SubmitRequest): Promise<SubmitResponse>;
    SubmitCustomPost(request: SubmitRequest): Promise<SubmitResponse>;
    Unhide(request: BasicIdRequest): Promise<Empty>;
    Unlock(request: BasicIdRequest): Promise<Empty>;
    UnmarkNSFW(request: BasicIdRequest): Promise<Empty>;
    Unsave(request: BasicIdRequest): Promise<Empty>;
    Unspoiler(request: BasicIdRequest): Promise<Empty>;
    Vote(request: VoteRequest): Promise<Empty>;
    GetIsPostHighlighted(request: GetIsPostHighlightedRequest): Promise<GetIsPostHighlightedResponse>;
    AddPostToHighlights(request: AddPostToHighlightsRequest): Promise<AddPostToHighlightsResponse>;
    RemovePostFromHighlights(request: RemovePostFromHighlightsRequest): Promise<RemovePostFromHighlightsResponse>;
    SetCustomPostStyles(request: SetCustomPostStylesRequest): Promise<Empty>;
    GetCustomPostStyles(request: GetCustomPostStylesRequest): Promise<CustomPostStyles>;
}
export declare class LinksAndCommentsClientJSON implements LinksAndCommentsClient {
    private readonly rpc;
    constructor(rpc: Rpc);
    Comment(request: CommentRequest): Promise<JsonWrappedComment>;
    Del(request: BasicIdRequest): Promise<Empty>;
    EditUserText(request: CommentRequest): Promise<JsonWrappedComment>;
    FollowPost(request: FollowPostRequest): Promise<Empty>;
    Hide(request: BasicIdRequest): Promise<Empty>;
    Info(request: InfoRequest): Promise<Listing>;
    Lock(request: BasicIdRequest): Promise<Empty>;
    MarkNSFW(request: BasicIdRequest): Promise<Empty>;
    MoreChildren(request: MoreChildrenRequest): Promise<JsonWrappedComment>;
    Report(request: ReportRequest): Promise<JsonStatus>;
    ReportAward(request: ReportAwardRequest): Promise<Empty>;
    Save(request: SaveRequest): Promise<Empty>;
    SendReplies(request: SendRepliesRequest): Promise<Empty>;
    SetContestMode(request: SetContestModeRequest): Promise<JsonStatus>;
    EditCustomPost(request: EditCustomPostRequest): Promise<JsonRedditObjects>;
    SetCustomPostPreview(request: SetCustomPostPreviewRequest): Promise<Empty>;
    SetSubredditSticky(request: SetSubredditStickyRequest): Promise<JsonStatus>;
    SetSuggestedSort(request: SetSuggestedSortRequest): Promise<JsonStatus>;
    Spoiler(request: BasicIdRequest): Promise<Empty>;
    Submit(request: SubmitRequest): Promise<SubmitResponse>;
    SubmitCustomPost(request: SubmitRequest): Promise<SubmitResponse>;
    Unhide(request: BasicIdRequest): Promise<Empty>;
    Unlock(request: BasicIdRequest): Promise<Empty>;
    UnmarkNSFW(request: BasicIdRequest): Promise<Empty>;
    Unsave(request: BasicIdRequest): Promise<Empty>;
    Unspoiler(request: BasicIdRequest): Promise<Empty>;
    Vote(request: VoteRequest): Promise<Empty>;
    GetIsPostHighlighted(request: GetIsPostHighlightedRequest): Promise<GetIsPostHighlightedResponse>;
    AddPostToHighlights(request: AddPostToHighlightsRequest): Promise<AddPostToHighlightsResponse>;
    RemovePostFromHighlights(request: RemovePostFromHighlightsRequest): Promise<RemovePostFromHighlightsResponse>;
    SetCustomPostStyles(request: SetCustomPostStylesRequest): Promise<Empty>;
    GetCustomPostStyles(request: GetCustomPostStylesRequest): Promise<CustomPostStyles>;
}
export declare class LinksAndCommentsClientProtobuf implements LinksAndCommentsClient {
    private readonly rpc;
    constructor(rpc: Rpc);
    Comment(request: CommentRequest): Promise<JsonWrappedComment>;
    Del(request: BasicIdRequest): Promise<Empty>;
    EditUserText(request: CommentRequest): Promise<JsonWrappedComment>;
    FollowPost(request: FollowPostRequest): Promise<Empty>;
    Hide(request: BasicIdRequest): Promise<Empty>;
    Info(request: InfoRequest): Promise<Listing>;
    Lock(request: BasicIdRequest): Promise<Empty>;
    MarkNSFW(request: BasicIdRequest): Promise<Empty>;
    MoreChildren(request: MoreChildrenRequest): Promise<JsonWrappedComment>;
    Report(request: ReportRequest): Promise<JsonStatus>;
    ReportAward(request: ReportAwardRequest): Promise<Empty>;
    Save(request: SaveRequest): Promise<Empty>;
    SendReplies(request: SendRepliesRequest): Promise<Empty>;
    SetContestMode(request: SetContestModeRequest): Promise<JsonStatus>;
    EditCustomPost(request: EditCustomPostRequest): Promise<JsonRedditObjects>;
    SetCustomPostPreview(request: SetCustomPostPreviewRequest): Promise<Empty>;
    SetSubredditSticky(request: SetSubredditStickyRequest): Promise<JsonStatus>;
    SetSuggestedSort(request: SetSuggestedSortRequest): Promise<JsonStatus>;
    Spoiler(request: BasicIdRequest): Promise<Empty>;
    Submit(request: SubmitRequest): Promise<SubmitResponse>;
    SubmitCustomPost(request: SubmitRequest): Promise<SubmitResponse>;
    Unhide(request: BasicIdRequest): Promise<Empty>;
    Unlock(request: BasicIdRequest): Promise<Empty>;
    UnmarkNSFW(request: BasicIdRequest): Promise<Empty>;
    Unsave(request: BasicIdRequest): Promise<Empty>;
    Unspoiler(request: BasicIdRequest): Promise<Empty>;
    Vote(request: VoteRequest): Promise<Empty>;
    GetIsPostHighlighted(request: GetIsPostHighlightedRequest): Promise<GetIsPostHighlightedResponse>;
    AddPostToHighlights(request: AddPostToHighlightsRequest): Promise<AddPostToHighlightsResponse>;
    RemovePostFromHighlights(request: RemovePostFromHighlightsRequest): Promise<RemovePostFromHighlightsResponse>;
    SetCustomPostStyles(request: SetCustomPostStylesRequest): Promise<Empty>;
    GetCustomPostStyles(request: GetCustomPostStylesRequest): Promise<CustomPostStyles>;
}
export {};
//# sourceMappingURL=linksandcomments_svc.twirp-client.d.ts.map