/**
 * #gamesdrawerbadge_msg.ts
 *
 * Code generated by ts-proto. DO NOT EDIT.
 * @packageDocumentation
 */
import _m0 from "protobufjs/minimal.js";
import { Duration } from "../../../google/protobuf/duration.js";
/** Request to show a badge in the games drawer for a given app, linking to a given post */
export interface ShowGamesDrawerBadgeRequest {
    /** The fullname of a post (e.g., "t3_abc123") */
    post: string;
    /** The duration in seconds until the badge expires */
    expiresIn?: Duration | undefined;
    /** The expiration time of the badge */
    expiresAt?: Date | undefined;
}
/** Response from setting a games drawer badge */
export interface ShowGamesDrawerBadgeResponse {
    /** Whether the games drawer badge was successfully set */
    success: boolean;
    /** Optional message providing additional context about the operation */
    message?: string | undefined;
}
/** Request to dismiss all active games drawer badges */
export interface DismissGamesDrawerBadgeRequest {
}
/** Response from dismissing active games drawer badges */
export interface DismissGamesDrawerBadgeResponse {
    /** Whether all active games drawer badges were successfully dismissed */
    success: boolean;
}
/** Request to get the status of active games drawer badges for an app */
export interface GetGamesDrawerBadgeStatusRequest {
}
/** Response from getting the status of an active games drawer badge for an app */
export interface GetGamesDrawerBadgeStatusResponse {
    /** Whether an active games drawer badge for an app is set */
    hasActiveBadge: boolean;
    /** The expiration time of the active games drawer badge, if set */
    expiresAt?: Date | undefined;
}
export declare const ShowGamesDrawerBadgeRequest: {
    $type: "devvit.plugin.notifications.ShowGamesDrawerBadgeRequest";
    encode(message: ShowGamesDrawerBadgeRequest, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): ShowGamesDrawerBadgeRequest;
    fromJSON(object: any): ShowGamesDrawerBadgeRequest;
    toJSON(message: ShowGamesDrawerBadgeRequest): unknown;
    create(base?: DeepPartial<ShowGamesDrawerBadgeRequest>): ShowGamesDrawerBadgeRequest;
    fromPartial(object: DeepPartial<ShowGamesDrawerBadgeRequest>): ShowGamesDrawerBadgeRequest;
};
export declare const ShowGamesDrawerBadgeResponse: {
    $type: "devvit.plugin.notifications.ShowGamesDrawerBadgeResponse";
    encode(message: ShowGamesDrawerBadgeResponse, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): ShowGamesDrawerBadgeResponse;
    fromJSON(object: any): ShowGamesDrawerBadgeResponse;
    toJSON(message: ShowGamesDrawerBadgeResponse): unknown;
    create(base?: DeepPartial<ShowGamesDrawerBadgeResponse>): ShowGamesDrawerBadgeResponse;
    fromPartial(object: DeepPartial<ShowGamesDrawerBadgeResponse>): ShowGamesDrawerBadgeResponse;
};
export declare const DismissGamesDrawerBadgeRequest: {
    $type: "devvit.plugin.notifications.DismissGamesDrawerBadgeRequest";
    encode(_: DismissGamesDrawerBadgeRequest, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): DismissGamesDrawerBadgeRequest;
    fromJSON(_: any): DismissGamesDrawerBadgeRequest;
    toJSON(_: DismissGamesDrawerBadgeRequest): unknown;
    create(base?: DeepPartial<DismissGamesDrawerBadgeRequest>): DismissGamesDrawerBadgeRequest;
    fromPartial(_: DeepPartial<DismissGamesDrawerBadgeRequest>): DismissGamesDrawerBadgeRequest;
};
export declare const DismissGamesDrawerBadgeResponse: {
    $type: "devvit.plugin.notifications.DismissGamesDrawerBadgeResponse";
    encode(message: DismissGamesDrawerBadgeResponse, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): DismissGamesDrawerBadgeResponse;
    fromJSON(object: any): DismissGamesDrawerBadgeResponse;
    toJSON(message: DismissGamesDrawerBadgeResponse): unknown;
    create(base?: DeepPartial<DismissGamesDrawerBadgeResponse>): DismissGamesDrawerBadgeResponse;
    fromPartial(object: DeepPartial<DismissGamesDrawerBadgeResponse>): DismissGamesDrawerBadgeResponse;
};
export declare const GetGamesDrawerBadgeStatusRequest: {
    $type: "devvit.plugin.notifications.GetGamesDrawerBadgeStatusRequest";
    encode(_: GetGamesDrawerBadgeStatusRequest, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): GetGamesDrawerBadgeStatusRequest;
    fromJSON(_: any): GetGamesDrawerBadgeStatusRequest;
    toJSON(_: GetGamesDrawerBadgeStatusRequest): unknown;
    create(base?: DeepPartial<GetGamesDrawerBadgeStatusRequest>): GetGamesDrawerBadgeStatusRequest;
    fromPartial(_: DeepPartial<GetGamesDrawerBadgeStatusRequest>): GetGamesDrawerBadgeStatusRequest;
};
export declare const GetGamesDrawerBadgeStatusResponse: {
    $type: "devvit.plugin.notifications.GetGamesDrawerBadgeStatusResponse";
    encode(message: GetGamesDrawerBadgeStatusResponse, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): GetGamesDrawerBadgeStatusResponse;
    fromJSON(object: any): GetGamesDrawerBadgeStatusResponse;
    toJSON(message: GetGamesDrawerBadgeStatusResponse): unknown;
    create(base?: DeepPartial<GetGamesDrawerBadgeStatusResponse>): GetGamesDrawerBadgeStatusResponse;
    fromPartial(object: DeepPartial<GetGamesDrawerBadgeStatusResponse>): GetGamesDrawerBadgeStatusResponse;
};
type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;
type DeepPartial<T> = T extends Builtin ? T : T extends globalThis.Array<infer U> ? globalThis.Array<DeepPartial<U>> : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>> : T extends {} ? {
    [K in keyof T]?: DeepPartial<T[K]>;
} : Partial<T>;
export {};
//# sourceMappingURL=gamesdrawerbadge_msg.d.ts.map