import { DeleteNotesResponse, ModNotesResponse, PostModNotesResponse, } from '@devvit/protos/types/devvit/plugin/redditapi/modnote/modnote_msg.js';
import { Empty } from '@devvit/protos/types/google/protobuf/empty.js';
import { RedditAPI } from './RedditAPI.js';
export class ModNote extends RedditAPI {
    async DeleteNotes(request, metadata) {
        const response = await this._fetch('DeleteNotes', request, metadata);
        return DeleteNotesResponse.fromJSON(this._decodeAndValidateResponseJSON(response));
    }
    async GetNotes(request, metadata) {
        const response = await this._fetch('GetNotes', request, metadata);
        return ModNotesResponse.fromJSON(this._decodeAndValidateResponseJSON(response));
    }
    async PostNotes(request, metadata) {
        const response = await this._fetch('PostNotes', request, metadata);
        return PostModNotesResponse.fromJSON(this._decodeAndValidateResponseJSON(response));
    }
    async PostRemovalNote(request, metadata) {
        await this._fetch('PostRemovalNote', request, metadata);
        return Empty.fromPartial({});
    }
    async RecentNotes(request, metadata) {
        const response = await this._fetch('RecentNotes', request, metadata);
        return ModNotesResponse.fromJSON(this._decodeAndValidateResponseJSON(response));
    }
}
