import type { RpcTransport } from "@protobuf-ts/runtime-rpc";
import type { ServiceInfo } from "@protobuf-ts/runtime-rpc";
import type { ListTokenChainResponse } from "./grant.js";
import type { ListTokenChainRequest } from "./grant.js";
import type { IssueDelegatedAccessTokenResponse } from "./grant.js";
import type { IssueDelegatedAccessTokenRequest } from "./grant.js";
import type { Ack } from "./common.js";
import type { RevokeAppAccessTokenRequest } from "./grant.js";
import type { ValidateAppAccessTokenResponse } from "./grant.js";
import type { ValidateAppAccessTokenRequest } from "./grant.js";
import type { AuthorizeExternalPrincipalResponse } from "./grant.js";
import type { AuthorizeExternalPrincipalRequest } from "./grant.js";
import type { UnaryCall } from "@protobuf-ts/runtime-rpc";
import type { RpcOptions } from "@protobuf-ts/runtime-rpc";
/**
 * @generated from protobuf service nimi.runtime.v1.RuntimeGrantService
 */
export interface IRuntimeGrantServiceClient {
    /**
     * @generated from protobuf rpc: AuthorizeExternalPrincipal
     */
    authorizeExternalPrincipal(input: AuthorizeExternalPrincipalRequest, options?: RpcOptions): UnaryCall<AuthorizeExternalPrincipalRequest, AuthorizeExternalPrincipalResponse>;
    /**
     * @generated from protobuf rpc: ValidateAppAccessToken
     */
    validateAppAccessToken(input: ValidateAppAccessTokenRequest, options?: RpcOptions): UnaryCall<ValidateAppAccessTokenRequest, ValidateAppAccessTokenResponse>;
    /**
     * @generated from protobuf rpc: RevokeAppAccessToken
     */
    revokeAppAccessToken(input: RevokeAppAccessTokenRequest, options?: RpcOptions): UnaryCall<RevokeAppAccessTokenRequest, Ack>;
    /**
     * @generated from protobuf rpc: IssueDelegatedAccessToken
     */
    issueDelegatedAccessToken(input: IssueDelegatedAccessTokenRequest, options?: RpcOptions): UnaryCall<IssueDelegatedAccessTokenRequest, IssueDelegatedAccessTokenResponse>;
    /**
     * @generated from protobuf rpc: ListTokenChain
     */
    listTokenChain(input: ListTokenChainRequest, options?: RpcOptions): UnaryCall<ListTokenChainRequest, ListTokenChainResponse>;
}
/**
 * @generated from protobuf service nimi.runtime.v1.RuntimeGrantService
 */
export declare class RuntimeGrantServiceClient implements IRuntimeGrantServiceClient, ServiceInfo {
    private readonly _transport;
    typeName: string;
    methods: import("@protobuf-ts/runtime-rpc").MethodInfo<any, any>[];
    options: {
        [extensionName: string]: import("@protobuf-ts/runtime").JsonValue;
    };
    constructor(_transport: RpcTransport);
    /**
     * @generated from protobuf rpc: AuthorizeExternalPrincipal
     */
    authorizeExternalPrincipal(input: AuthorizeExternalPrincipalRequest, options?: RpcOptions): UnaryCall<AuthorizeExternalPrincipalRequest, AuthorizeExternalPrincipalResponse>;
    /**
     * @generated from protobuf rpc: ValidateAppAccessToken
     */
    validateAppAccessToken(input: ValidateAppAccessTokenRequest, options?: RpcOptions): UnaryCall<ValidateAppAccessTokenRequest, ValidateAppAccessTokenResponse>;
    /**
     * @generated from protobuf rpc: RevokeAppAccessToken
     */
    revokeAppAccessToken(input: RevokeAppAccessTokenRequest, options?: RpcOptions): UnaryCall<RevokeAppAccessTokenRequest, Ack>;
    /**
     * @generated from protobuf rpc: IssueDelegatedAccessToken
     */
    issueDelegatedAccessToken(input: IssueDelegatedAccessTokenRequest, options?: RpcOptions): UnaryCall<IssueDelegatedAccessTokenRequest, IssueDelegatedAccessTokenResponse>;
    /**
     * @generated from protobuf rpc: ListTokenChain
     */
    listTokenChain(input: ListTokenChainRequest, options?: RpcOptions): UnaryCall<ListTokenChainRequest, ListTokenChainResponse>;
}
//# sourceMappingURL=grant.client.d.ts.map