/**
 * #utilities.ts
 *
 * Code generated by ts-proto. DO NOT EDIT.
 * @packageDocumentation
 */
import _m0 from "protobufjs/minimal.js";
import { Metadata } from "../../../../../lib/Types.js";
import { GlobalListType } from "../../../dev_portal/fetch_domain_request/fetch_domain_request.js";
export declare enum CurationType {
    CURATION_TYPE_UNSPECIFIED = 0,
    CURATION_TYPE_NEW = 1,
    CURATION_TYPE_POPULAR = 2,
    UNRECOGNIZED = -1
}
export declare function curationTypeFromJSON(object: any): CurationType;
export declare function curationTypeToJSON(object: CurationType): number;
export interface AccessKeyPurgeRequest {
    /** the t2_ user id */
    userId: string;
    /** also purge the refresh key */
    includeRefresh: boolean;
}
export interface InstallationsPurgeRequest {
    /** t5 subreddit id */
    subreddit: string;
}
export interface InstallationPurgeRequest {
    installationId: string;
}
export interface AppVersionPurgeRequest {
    appVersionId: string;
}
export interface AppPurgeRequest {
    appId: string;
    appSlug: string;
}
export interface AppVersionPublishStatusPurgeRequest {
    appVersionId: string;
}
/** Purge request for curated games cache. */
export interface CuratedGamesPurgeRequest {
    /** curation type to purge (example: "NEW" or "POPULAR") */
    curationType: CurationType;
}
export interface PurgeAllRequest {
    cacheType: PurgeAllRequest_CacheType;
}
/** Purge all cache entries of the specified type */
export declare enum PurgeAllRequest_CacheType {
    UNSPECIFIED = 0,
    /** INSTALLATION - devvit-ecosystem cache types */
    INSTALLATION = 1,
    SUBREDDIT_APP_INSTALLS = 2,
    APP = 3,
    APP_BY_ID = 4,
    APP_PUBLISH_REQUEST = 5,
    APP_DOMAINS = 6,
    GLOBAL_DOMAINS = 7,
    /** POST - devvit-runtime cache types */
    POST = 8,
    POST_RENDER = 9,
    POSTS_BY_INSTALLATION = 10,
    CONTEXT_ACTIONS = 11,
    APP_PERMISSIONS = 12,
    /** DRAWER - other cache types */
    DRAWER = 13,
    TOP_CUSTOM_POSTS = 14,
    APP_HEALTH = 15,
    APP_WITH_CATEGORIES = 16,
    UNRECOGNIZED = -1
}
export declare function purgeAllRequest_CacheTypeFromJSON(object: any): PurgeAllRequest_CacheType;
export declare function purgeAllRequest_CacheTypeToJSON(object: PurgeAllRequest_CacheType): number;
export interface PurgeResult {
    /** Number of items purged */
    count: number;
}
export interface CacheContextActionsRequest {
    installationId: string;
}
export interface RefreshGlobalDomainsRequest {
    globalListType: GlobalListType;
}
export interface AcceptInviteRequest {
    subredditName: string;
    appAccountId: string;
}
export interface AcceptInviteResponse {
}
export declare const AccessKeyPurgeRequest: {
    $type: "devvit.gateway.utils.v1alpha.AccessKeyPurgeRequest";
    encode(message: AccessKeyPurgeRequest, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): AccessKeyPurgeRequest;
    fromJSON(object: any): AccessKeyPurgeRequest;
    toJSON(message: AccessKeyPurgeRequest): unknown;
    create(base?: DeepPartial<AccessKeyPurgeRequest>): AccessKeyPurgeRequest;
    fromPartial(object: DeepPartial<AccessKeyPurgeRequest>): AccessKeyPurgeRequest;
};
export declare const InstallationsPurgeRequest: {
    $type: "devvit.gateway.utils.v1alpha.InstallationsPurgeRequest";
    encode(message: InstallationsPurgeRequest, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): InstallationsPurgeRequest;
    fromJSON(object: any): InstallationsPurgeRequest;
    toJSON(message: InstallationsPurgeRequest): unknown;
    create(base?: DeepPartial<InstallationsPurgeRequest>): InstallationsPurgeRequest;
    fromPartial(object: DeepPartial<InstallationsPurgeRequest>): InstallationsPurgeRequest;
};
export declare const InstallationPurgeRequest: {
    $type: "devvit.gateway.utils.v1alpha.InstallationPurgeRequest";
    encode(message: InstallationPurgeRequest, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): InstallationPurgeRequest;
    fromJSON(object: any): InstallationPurgeRequest;
    toJSON(message: InstallationPurgeRequest): unknown;
    create(base?: DeepPartial<InstallationPurgeRequest>): InstallationPurgeRequest;
    fromPartial(object: DeepPartial<InstallationPurgeRequest>): InstallationPurgeRequest;
};
export declare const AppVersionPurgeRequest: {
    $type: "devvit.gateway.utils.v1alpha.AppVersionPurgeRequest";
    encode(message: AppVersionPurgeRequest, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): AppVersionPurgeRequest;
    fromJSON(object: any): AppVersionPurgeRequest;
    toJSON(message: AppVersionPurgeRequest): unknown;
    create(base?: DeepPartial<AppVersionPurgeRequest>): AppVersionPurgeRequest;
    fromPartial(object: DeepPartial<AppVersionPurgeRequest>): AppVersionPurgeRequest;
};
export declare const AppPurgeRequest: {
    $type: "devvit.gateway.utils.v1alpha.AppPurgeRequest";
    encode(message: AppPurgeRequest, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): AppPurgeRequest;
    fromJSON(object: any): AppPurgeRequest;
    toJSON(message: AppPurgeRequest): unknown;
    create(base?: DeepPartial<AppPurgeRequest>): AppPurgeRequest;
    fromPartial(object: DeepPartial<AppPurgeRequest>): AppPurgeRequest;
};
export declare const AppVersionPublishStatusPurgeRequest: {
    $type: "devvit.gateway.utils.v1alpha.AppVersionPublishStatusPurgeRequest";
    encode(message: AppVersionPublishStatusPurgeRequest, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): AppVersionPublishStatusPurgeRequest;
    fromJSON(object: any): AppVersionPublishStatusPurgeRequest;
    toJSON(message: AppVersionPublishStatusPurgeRequest): unknown;
    create(base?: DeepPartial<AppVersionPublishStatusPurgeRequest>): AppVersionPublishStatusPurgeRequest;
    fromPartial(object: DeepPartial<AppVersionPublishStatusPurgeRequest>): AppVersionPublishStatusPurgeRequest;
};
export declare const CuratedGamesPurgeRequest: {
    $type: "devvit.gateway.utils.v1alpha.CuratedGamesPurgeRequest";
    encode(message: CuratedGamesPurgeRequest, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): CuratedGamesPurgeRequest;
    fromJSON(object: any): CuratedGamesPurgeRequest;
    toJSON(message: CuratedGamesPurgeRequest): unknown;
    create(base?: DeepPartial<CuratedGamesPurgeRequest>): CuratedGamesPurgeRequest;
    fromPartial(object: DeepPartial<CuratedGamesPurgeRequest>): CuratedGamesPurgeRequest;
};
export declare const PurgeAllRequest: {
    $type: "devvit.gateway.utils.v1alpha.PurgeAllRequest";
    encode(message: PurgeAllRequest, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): PurgeAllRequest;
    fromJSON(object: any): PurgeAllRequest;
    toJSON(message: PurgeAllRequest): unknown;
    create(base?: DeepPartial<PurgeAllRequest>): PurgeAllRequest;
    fromPartial(object: DeepPartial<PurgeAllRequest>): PurgeAllRequest;
};
export declare const PurgeResult: {
    $type: "devvit.gateway.utils.v1alpha.PurgeResult";
    encode(message: PurgeResult, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): PurgeResult;
    fromJSON(object: any): PurgeResult;
    toJSON(message: PurgeResult): unknown;
    create(base?: DeepPartial<PurgeResult>): PurgeResult;
    fromPartial(object: DeepPartial<PurgeResult>): PurgeResult;
};
export declare const CacheContextActionsRequest: {
    $type: "devvit.gateway.utils.v1alpha.CacheContextActionsRequest";
    encode(message: CacheContextActionsRequest, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): CacheContextActionsRequest;
    fromJSON(object: any): CacheContextActionsRequest;
    toJSON(message: CacheContextActionsRequest): unknown;
    create(base?: DeepPartial<CacheContextActionsRequest>): CacheContextActionsRequest;
    fromPartial(object: DeepPartial<CacheContextActionsRequest>): CacheContextActionsRequest;
};
export declare const RefreshGlobalDomainsRequest: {
    $type: "devvit.gateway.utils.v1alpha.RefreshGlobalDomainsRequest";
    encode(message: RefreshGlobalDomainsRequest, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): RefreshGlobalDomainsRequest;
    fromJSON(object: any): RefreshGlobalDomainsRequest;
    toJSON(message: RefreshGlobalDomainsRequest): unknown;
    create(base?: DeepPartial<RefreshGlobalDomainsRequest>): RefreshGlobalDomainsRequest;
    fromPartial(object: DeepPartial<RefreshGlobalDomainsRequest>): RefreshGlobalDomainsRequest;
};
export declare const AcceptInviteRequest: {
    $type: "devvit.gateway.utils.v1alpha.AcceptInviteRequest";
    encode(message: AcceptInviteRequest, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): AcceptInviteRequest;
    fromJSON(object: any): AcceptInviteRequest;
    toJSON(message: AcceptInviteRequest): unknown;
    create(base?: DeepPartial<AcceptInviteRequest>): AcceptInviteRequest;
    fromPartial(object: DeepPartial<AcceptInviteRequest>): AcceptInviteRequest;
};
export declare const AcceptInviteResponse: {
    $type: "devvit.gateway.utils.v1alpha.AcceptInviteResponse";
    encode(_: AcceptInviteResponse, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): AcceptInviteResponse;
    fromJSON(_: any): AcceptInviteResponse;
    toJSON(_: AcceptInviteResponse): unknown;
    create(base?: DeepPartial<AcceptInviteResponse>): AcceptInviteResponse;
    fromPartial(_: DeepPartial<AcceptInviteResponse>): AcceptInviteResponse;
};
export interface CacheUtils {
    /**
     * Temporary method for fetching context actions and storing/caching them in the Runtime DB.
     * This is for a single-use backfill and can be removed afterwards.
     * TODO(gunsch): delete when finished.
     */
    CacheContextActionsInRuntimeDb(request: CacheContextActionsRequest, metadata?: Metadata): Promise<PurgeResult>;
    PurgeAccessKey(request: AccessKeyPurgeRequest, metadata?: Metadata): Promise<PurgeResult>;
    PurgeInstallations(request: InstallationsPurgeRequest, metadata?: Metadata): Promise<PurgeResult>;
    PurgeInstallation(request: InstallationPurgeRequest, metadata?: Metadata): Promise<PurgeResult>;
    PurgeAppVersion(request: AppVersionPurgeRequest, metadata?: Metadata): Promise<PurgeResult>;
    PurgeApp(request: AppPurgeRequest, metadata?: Metadata): Promise<PurgeResult>;
    PurgeAppVersionPublishStatus(request: AppVersionPublishStatusPurgeRequest, metadata?: Metadata): Promise<PurgeResult>;
    PurgeCuratedGames(request: CuratedGamesPurgeRequest, metadata?: Metadata): Promise<PurgeResult>;
    PurgeAll(request: PurgeAllRequest, metadata?: Metadata): Promise<PurgeResult>;
    /** Purges global domains cache then repopulates from DB. Use after adding or removing global domains. */
    RefreshGlobalDomains(request: RefreshGlobalDomainsRequest, metadata?: Metadata): Promise<PurgeResult>;
}
export declare const CacheUtilsServiceName = "devvit.gateway.utils.v1alpha.CacheUtils";
export declare class CacheUtilsClientImpl implements CacheUtils {
    private readonly rpc;
    private readonly service;
    constructor(rpc: Rpc, opts?: {
        service?: string;
    });
    CacheContextActionsInRuntimeDb(request: CacheContextActionsRequest, metadata?: Metadata): Promise<PurgeResult>;
    PurgeAccessKey(request: AccessKeyPurgeRequest, metadata?: Metadata): Promise<PurgeResult>;
    PurgeInstallations(request: InstallationsPurgeRequest, metadata?: Metadata): Promise<PurgeResult>;
    PurgeInstallation(request: InstallationPurgeRequest, metadata?: Metadata): Promise<PurgeResult>;
    PurgeAppVersion(request: AppVersionPurgeRequest, metadata?: Metadata): Promise<PurgeResult>;
    PurgeApp(request: AppPurgeRequest, metadata?: Metadata): Promise<PurgeResult>;
    PurgeAppVersionPublishStatus(request: AppVersionPublishStatusPurgeRequest, metadata?: Metadata): Promise<PurgeResult>;
    PurgeCuratedGames(request: CuratedGamesPurgeRequest, metadata?: Metadata): Promise<PurgeResult>;
    PurgeAll(request: PurgeAllRequest, metadata?: Metadata): Promise<PurgeResult>;
    RefreshGlobalDomains(request: RefreshGlobalDomainsRequest, metadata?: Metadata): Promise<PurgeResult>;
}
export type CacheUtilsDefinition = typeof CacheUtilsDefinition;
export declare const CacheUtilsDefinition: {
    readonly name: "CacheUtils";
    readonly fullName: "devvit.gateway.utils.v1alpha.CacheUtils";
    readonly methods: {
        /**
         * Temporary method for fetching context actions and storing/caching them in the Runtime DB.
         * This is for a single-use backfill and can be removed afterwards.
         * TODO(gunsch): delete when finished.
         */
        readonly cacheContextActionsInRuntimeDb: {
            readonly name: "CacheContextActionsInRuntimeDb";
            readonly requestType: {
                $type: "devvit.gateway.utils.v1alpha.CacheContextActionsRequest";
                encode(message: CacheContextActionsRequest, writer?: _m0.Writer): _m0.Writer;
                decode(input: _m0.Reader | Uint8Array, length?: number): CacheContextActionsRequest;
                fromJSON(object: any): CacheContextActionsRequest;
                toJSON(message: CacheContextActionsRequest): unknown;
                create(base?: DeepPartial<CacheContextActionsRequest>): CacheContextActionsRequest;
                fromPartial(object: DeepPartial<CacheContextActionsRequest>): CacheContextActionsRequest;
            };
            readonly requestStream: false;
            readonly responseType: {
                $type: "devvit.gateway.utils.v1alpha.PurgeResult";
                encode(message: PurgeResult, writer?: _m0.Writer): _m0.Writer;
                decode(input: _m0.Reader | Uint8Array, length?: number): PurgeResult;
                fromJSON(object: any): PurgeResult;
                toJSON(message: PurgeResult): unknown;
                create(base?: DeepPartial<PurgeResult>): PurgeResult;
                fromPartial(object: DeepPartial<PurgeResult>): PurgeResult;
            };
            readonly responseStream: false;
            readonly options: {};
        };
        readonly purgeAccessKey: {
            readonly name: "PurgeAccessKey";
            readonly requestType: {
                $type: "devvit.gateway.utils.v1alpha.AccessKeyPurgeRequest";
                encode(message: AccessKeyPurgeRequest, writer?: _m0.Writer): _m0.Writer;
                decode(input: _m0.Reader | Uint8Array, length?: number): AccessKeyPurgeRequest;
                fromJSON(object: any): AccessKeyPurgeRequest;
                toJSON(message: AccessKeyPurgeRequest): unknown;
                create(base?: DeepPartial<AccessKeyPurgeRequest>): AccessKeyPurgeRequest;
                fromPartial(object: DeepPartial<AccessKeyPurgeRequest>): AccessKeyPurgeRequest;
            };
            readonly requestStream: false;
            readonly responseType: {
                $type: "devvit.gateway.utils.v1alpha.PurgeResult";
                encode(message: PurgeResult, writer?: _m0.Writer): _m0.Writer;
                decode(input: _m0.Reader | Uint8Array, length?: number): PurgeResult;
                fromJSON(object: any): PurgeResult;
                toJSON(message: PurgeResult): unknown;
                create(base?: DeepPartial<PurgeResult>): PurgeResult;
                fromPartial(object: DeepPartial<PurgeResult>): PurgeResult;
            };
            readonly responseStream: false;
            readonly options: {};
        };
        readonly purgeInstallations: {
            readonly name: "PurgeInstallations";
            readonly requestType: {
                $type: "devvit.gateway.utils.v1alpha.InstallationsPurgeRequest";
                encode(message: InstallationsPurgeRequest, writer?: _m0.Writer): _m0.Writer;
                decode(input: _m0.Reader | Uint8Array, length?: number): InstallationsPurgeRequest;
                fromJSON(object: any): InstallationsPurgeRequest;
                toJSON(message: InstallationsPurgeRequest): unknown;
                create(base?: DeepPartial<InstallationsPurgeRequest>): InstallationsPurgeRequest;
                fromPartial(object: DeepPartial<InstallationsPurgeRequest>): InstallationsPurgeRequest;
            };
            readonly requestStream: false;
            readonly responseType: {
                $type: "devvit.gateway.utils.v1alpha.PurgeResult";
                encode(message: PurgeResult, writer?: _m0.Writer): _m0.Writer;
                decode(input: _m0.Reader | Uint8Array, length?: number): PurgeResult;
                fromJSON(object: any): PurgeResult;
                toJSON(message: PurgeResult): unknown;
                create(base?: DeepPartial<PurgeResult>): PurgeResult;
                fromPartial(object: DeepPartial<PurgeResult>): PurgeResult;
            };
            readonly responseStream: false;
            readonly options: {};
        };
        readonly purgeInstallation: {
            readonly name: "PurgeInstallation";
            readonly requestType: {
                $type: "devvit.gateway.utils.v1alpha.InstallationPurgeRequest";
                encode(message: InstallationPurgeRequest, writer?: _m0.Writer): _m0.Writer;
                decode(input: _m0.Reader | Uint8Array, length?: number): InstallationPurgeRequest;
                fromJSON(object: any): InstallationPurgeRequest;
                toJSON(message: InstallationPurgeRequest): unknown;
                create(base?: DeepPartial<InstallationPurgeRequest>): InstallationPurgeRequest;
                fromPartial(object: DeepPartial<InstallationPurgeRequest>): InstallationPurgeRequest;
            };
            readonly requestStream: false;
            readonly responseType: {
                $type: "devvit.gateway.utils.v1alpha.PurgeResult";
                encode(message: PurgeResult, writer?: _m0.Writer): _m0.Writer;
                decode(input: _m0.Reader | Uint8Array, length?: number): PurgeResult;
                fromJSON(object: any): PurgeResult;
                toJSON(message: PurgeResult): unknown;
                create(base?: DeepPartial<PurgeResult>): PurgeResult;
                fromPartial(object: DeepPartial<PurgeResult>): PurgeResult;
            };
            readonly responseStream: false;
            readonly options: {};
        };
        readonly purgeAppVersion: {
            readonly name: "PurgeAppVersion";
            readonly requestType: {
                $type: "devvit.gateway.utils.v1alpha.AppVersionPurgeRequest";
                encode(message: AppVersionPurgeRequest, writer?: _m0.Writer): _m0.Writer;
                decode(input: _m0.Reader | Uint8Array, length?: number): AppVersionPurgeRequest;
                fromJSON(object: any): AppVersionPurgeRequest;
                toJSON(message: AppVersionPurgeRequest): unknown;
                create(base?: DeepPartial<AppVersionPurgeRequest>): AppVersionPurgeRequest;
                fromPartial(object: DeepPartial<AppVersionPurgeRequest>): AppVersionPurgeRequest;
            };
            readonly requestStream: false;
            readonly responseType: {
                $type: "devvit.gateway.utils.v1alpha.PurgeResult";
                encode(message: PurgeResult, writer?: _m0.Writer): _m0.Writer;
                decode(input: _m0.Reader | Uint8Array, length?: number): PurgeResult;
                fromJSON(object: any): PurgeResult;
                toJSON(message: PurgeResult): unknown;
                create(base?: DeepPartial<PurgeResult>): PurgeResult;
                fromPartial(object: DeepPartial<PurgeResult>): PurgeResult;
            };
            readonly responseStream: false;
            readonly options: {};
        };
        readonly purgeApp: {
            readonly name: "PurgeApp";
            readonly requestType: {
                $type: "devvit.gateway.utils.v1alpha.AppPurgeRequest";
                encode(message: AppPurgeRequest, writer?: _m0.Writer): _m0.Writer;
                decode(input: _m0.Reader | Uint8Array, length?: number): AppPurgeRequest;
                fromJSON(object: any): AppPurgeRequest;
                toJSON(message: AppPurgeRequest): unknown;
                create(base?: DeepPartial<AppPurgeRequest>): AppPurgeRequest;
                fromPartial(object: DeepPartial<AppPurgeRequest>): AppPurgeRequest;
            };
            readonly requestStream: false;
            readonly responseType: {
                $type: "devvit.gateway.utils.v1alpha.PurgeResult";
                encode(message: PurgeResult, writer?: _m0.Writer): _m0.Writer;
                decode(input: _m0.Reader | Uint8Array, length?: number): PurgeResult;
                fromJSON(object: any): PurgeResult;
                toJSON(message: PurgeResult): unknown;
                create(base?: DeepPartial<PurgeResult>): PurgeResult;
                fromPartial(object: DeepPartial<PurgeResult>): PurgeResult;
            };
            readonly responseStream: false;
            readonly options: {};
        };
        readonly purgeAppVersionPublishStatus: {
            readonly name: "PurgeAppVersionPublishStatus";
            readonly requestType: {
                $type: "devvit.gateway.utils.v1alpha.AppVersionPublishStatusPurgeRequest";
                encode(message: AppVersionPublishStatusPurgeRequest, writer?: _m0.Writer): _m0.Writer;
                decode(input: _m0.Reader | Uint8Array, length?: number): AppVersionPublishStatusPurgeRequest;
                fromJSON(object: any): AppVersionPublishStatusPurgeRequest;
                toJSON(message: AppVersionPublishStatusPurgeRequest): unknown;
                create(base?: DeepPartial<AppVersionPublishStatusPurgeRequest>): AppVersionPublishStatusPurgeRequest;
                fromPartial(object: DeepPartial<AppVersionPublishStatusPurgeRequest>): AppVersionPublishStatusPurgeRequest;
            };
            readonly requestStream: false;
            readonly responseType: {
                $type: "devvit.gateway.utils.v1alpha.PurgeResult";
                encode(message: PurgeResult, writer?: _m0.Writer): _m0.Writer;
                decode(input: _m0.Reader | Uint8Array, length?: number): PurgeResult;
                fromJSON(object: any): PurgeResult;
                toJSON(message: PurgeResult): unknown;
                create(base?: DeepPartial<PurgeResult>): PurgeResult;
                fromPartial(object: DeepPartial<PurgeResult>): PurgeResult;
            };
            readonly responseStream: false;
            readonly options: {};
        };
        readonly purgeCuratedGames: {
            readonly name: "PurgeCuratedGames";
            readonly requestType: {
                $type: "devvit.gateway.utils.v1alpha.CuratedGamesPurgeRequest";
                encode(message: CuratedGamesPurgeRequest, writer?: _m0.Writer): _m0.Writer;
                decode(input: _m0.Reader | Uint8Array, length?: number): CuratedGamesPurgeRequest;
                fromJSON(object: any): CuratedGamesPurgeRequest;
                toJSON(message: CuratedGamesPurgeRequest): unknown;
                create(base?: DeepPartial<CuratedGamesPurgeRequest>): CuratedGamesPurgeRequest;
                fromPartial(object: DeepPartial<CuratedGamesPurgeRequest>): CuratedGamesPurgeRequest;
            };
            readonly requestStream: false;
            readonly responseType: {
                $type: "devvit.gateway.utils.v1alpha.PurgeResult";
                encode(message: PurgeResult, writer?: _m0.Writer): _m0.Writer;
                decode(input: _m0.Reader | Uint8Array, length?: number): PurgeResult;
                fromJSON(object: any): PurgeResult;
                toJSON(message: PurgeResult): unknown;
                create(base?: DeepPartial<PurgeResult>): PurgeResult;
                fromPartial(object: DeepPartial<PurgeResult>): PurgeResult;
            };
            readonly responseStream: false;
            readonly options: {};
        };
        readonly purgeAll: {
            readonly name: "PurgeAll";
            readonly requestType: {
                $type: "devvit.gateway.utils.v1alpha.PurgeAllRequest";
                encode(message: PurgeAllRequest, writer?: _m0.Writer): _m0.Writer;
                decode(input: _m0.Reader | Uint8Array, length?: number): PurgeAllRequest;
                fromJSON(object: any): PurgeAllRequest;
                toJSON(message: PurgeAllRequest): unknown;
                create(base?: DeepPartial<PurgeAllRequest>): PurgeAllRequest;
                fromPartial(object: DeepPartial<PurgeAllRequest>): PurgeAllRequest;
            };
            readonly requestStream: false;
            readonly responseType: {
                $type: "devvit.gateway.utils.v1alpha.PurgeResult";
                encode(message: PurgeResult, writer?: _m0.Writer): _m0.Writer;
                decode(input: _m0.Reader | Uint8Array, length?: number): PurgeResult;
                fromJSON(object: any): PurgeResult;
                toJSON(message: PurgeResult): unknown;
                create(base?: DeepPartial<PurgeResult>): PurgeResult;
                fromPartial(object: DeepPartial<PurgeResult>): PurgeResult;
            };
            readonly responseStream: false;
            readonly options: {};
        };
        /** Purges global domains cache then repopulates from DB. Use after adding or removing global domains. */
        readonly refreshGlobalDomains: {
            readonly name: "RefreshGlobalDomains";
            readonly requestType: {
                $type: "devvit.gateway.utils.v1alpha.RefreshGlobalDomainsRequest";
                encode(message: RefreshGlobalDomainsRequest, writer?: _m0.Writer): _m0.Writer;
                decode(input: _m0.Reader | Uint8Array, length?: number): RefreshGlobalDomainsRequest;
                fromJSON(object: any): RefreshGlobalDomainsRequest;
                toJSON(message: RefreshGlobalDomainsRequest): unknown;
                create(base?: DeepPartial<RefreshGlobalDomainsRequest>): RefreshGlobalDomainsRequest;
                fromPartial(object: DeepPartial<RefreshGlobalDomainsRequest>): RefreshGlobalDomainsRequest;
            };
            readonly requestStream: false;
            readonly responseType: {
                $type: "devvit.gateway.utils.v1alpha.PurgeResult";
                encode(message: PurgeResult, writer?: _m0.Writer): _m0.Writer;
                decode(input: _m0.Reader | Uint8Array, length?: number): PurgeResult;
                fromJSON(object: any): PurgeResult;
                toJSON(message: PurgeResult): unknown;
                create(base?: DeepPartial<PurgeResult>): PurgeResult;
                fromPartial(object: DeepPartial<PurgeResult>): PurgeResult;
            };
            readonly responseStream: false;
            readonly options: {};
        };
    };
};
export interface ModInviteUtils {
    AcceptInvite(request: AcceptInviteRequest, metadata?: Metadata): Promise<AcceptInviteResponse>;
}
export declare const ModInviteUtilsServiceName = "devvit.gateway.utils.v1alpha.ModInviteUtils";
export declare class ModInviteUtilsClientImpl implements ModInviteUtils {
    private readonly rpc;
    private readonly service;
    constructor(rpc: Rpc, opts?: {
        service?: string;
    });
    AcceptInvite(request: AcceptInviteRequest, metadata?: Metadata): Promise<AcceptInviteResponse>;
}
export type ModInviteUtilsDefinition = typeof ModInviteUtilsDefinition;
export declare const ModInviteUtilsDefinition: {
    readonly name: "ModInviteUtils";
    readonly fullName: "devvit.gateway.utils.v1alpha.ModInviteUtils";
    readonly methods: {
        readonly acceptInvite: {
            readonly name: "AcceptInvite";
            readonly requestType: {
                $type: "devvit.gateway.utils.v1alpha.AcceptInviteRequest";
                encode(message: AcceptInviteRequest, writer?: _m0.Writer): _m0.Writer;
                decode(input: _m0.Reader | Uint8Array, length?: number): AcceptInviteRequest;
                fromJSON(object: any): AcceptInviteRequest;
                toJSON(message: AcceptInviteRequest): unknown;
                create(base?: DeepPartial<AcceptInviteRequest>): AcceptInviteRequest;
                fromPartial(object: DeepPartial<AcceptInviteRequest>): AcceptInviteRequest;
            };
            readonly requestStream: false;
            readonly responseType: {
                $type: "devvit.gateway.utils.v1alpha.AcceptInviteResponse";
                encode(_: AcceptInviteResponse, writer?: _m0.Writer): _m0.Writer;
                decode(input: _m0.Reader | Uint8Array, length?: number): AcceptInviteResponse;
                fromJSON(_: any): AcceptInviteResponse;
                toJSON(_: AcceptInviteResponse): unknown;
                create(base?: DeepPartial<AcceptInviteResponse>): AcceptInviteResponse;
                fromPartial(_: DeepPartial<AcceptInviteResponse>): AcceptInviteResponse;
            };
            readonly responseStream: false;
            readonly options: {};
        };
    };
};
interface Rpc {
    request(service: string, method: string, data: Uint8Array, metadata?: Metadata): Promise<Uint8Array>;
}
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=utilities.d.ts.map