// @generated by protobuf-ts 2.9.6
// @generated from protobuf file "project-lifecycle.proto" (package "api", syntax proto3)
// tslint:disable
import type { RpcTransport } from "@protobuf-ts/runtime-rpc";
import type { ServiceInfo } from "@protobuf-ts/runtime-rpc";
import { ProjectLifecycleService } from "./project-lifecycle";
import type { SetTaskNextRunAtResponse } from "./project-lifecycle";
import type { SetTaskNextRunAtRequest } from "./project-lifecycle";
import type { SetTaskExecutedAtResponse } from "./project-lifecycle";
import type { SetTaskExecutedAtRequest } from "./project-lifecycle";
import type { SetTaskStatusResponse } from "./project-lifecycle";
import type { SetTaskStatusRequest } from "./project-lifecycle";
import type { ListTasksResponse } from "./project-lifecycle";
import type { ListTasksRequest } from "./project-lifecycle";
import type { GetTaskResponse } from "./project-lifecycle";
import type { GetTaskRequest } from "./project-lifecycle";
import { stackIntercept } from "@protobuf-ts/runtime-rpc";
import type { SetTaskRuleResponse } from "./project-lifecycle";
import type { SetTaskRuleRequest } from "./project-lifecycle";
import type { UnaryCall } from "@protobuf-ts/runtime-rpc";
import type { RpcOptions } from "@protobuf-ts/runtime-rpc";
/**
 * @generated from protobuf service api.ProjectLifecycleService
 */
export interface IProjectLifecycleServiceClient {
    /**
     * @generated from protobuf rpc: SetTaskRule(api.SetTaskRuleRequest) returns (api.SetTaskRuleResponse);
     */
    setTaskRule(input: SetTaskRuleRequest, options?: RpcOptions): UnaryCall<SetTaskRuleRequest, SetTaskRuleResponse>;
    /**
     * @generated from protobuf rpc: GetTask(api.GetTaskRequest) returns (api.GetTaskResponse);
     */
    getTask(input: GetTaskRequest, options?: RpcOptions): UnaryCall<GetTaskRequest, GetTaskResponse>;
    /**
     * @generated from protobuf rpc: ListTasks(api.ListTasksRequest) returns (api.ListTasksResponse);
     */
    listTasks(input: ListTasksRequest, options?: RpcOptions): UnaryCall<ListTasksRequest, ListTasksResponse>;
    /**
     * @generated from protobuf rpc: SetTaskStatus(api.SetTaskStatusRequest) returns (api.SetTaskStatusResponse);
     */
    setTaskStatus(input: SetTaskStatusRequest, options?: RpcOptions): UnaryCall<SetTaskStatusRequest, SetTaskStatusResponse>;
    /**
     * @generated from protobuf rpc: SetTaskExecutedAt(api.SetTaskExecutedAtRequest) returns (api.SetTaskExecutedAtResponse);
     */
    setTaskExecutedAt(input: SetTaskExecutedAtRequest, options?: RpcOptions): UnaryCall<SetTaskExecutedAtRequest, SetTaskExecutedAtResponse>;
    /**
     * @generated from protobuf rpc: SetTaskNextRunAt(api.SetTaskNextRunAtRequest) returns (api.SetTaskNextRunAtResponse);
     */
    setTaskNextRunAt(input: SetTaskNextRunAtRequest, options?: RpcOptions): UnaryCall<SetTaskNextRunAtRequest, SetTaskNextRunAtResponse>;
}
/**
 * @generated from protobuf service api.ProjectLifecycleService
 */
export class ProjectLifecycleServiceClient implements IProjectLifecycleServiceClient, ServiceInfo {
    typeName = ProjectLifecycleService.typeName;
    methods = ProjectLifecycleService.methods;
    options = ProjectLifecycleService.options;
    constructor(private readonly _transport: RpcTransport) {
    }
    /**
     * @generated from protobuf rpc: SetTaskRule(api.SetTaskRuleRequest) returns (api.SetTaskRuleResponse);
     */
    setTaskRule(input: SetTaskRuleRequest, options?: RpcOptions): UnaryCall<SetTaskRuleRequest, SetTaskRuleResponse> {
        const method = this.methods[0], opt = this._transport.mergeOptions(options);
        return stackIntercept<SetTaskRuleRequest, SetTaskRuleResponse>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: GetTask(api.GetTaskRequest) returns (api.GetTaskResponse);
     */
    getTask(input: GetTaskRequest, options?: RpcOptions): UnaryCall<GetTaskRequest, GetTaskResponse> {
        const method = this.methods[1], opt = this._transport.mergeOptions(options);
        return stackIntercept<GetTaskRequest, GetTaskResponse>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: ListTasks(api.ListTasksRequest) returns (api.ListTasksResponse);
     */
    listTasks(input: ListTasksRequest, options?: RpcOptions): UnaryCall<ListTasksRequest, ListTasksResponse> {
        const method = this.methods[2], opt = this._transport.mergeOptions(options);
        return stackIntercept<ListTasksRequest, ListTasksResponse>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: SetTaskStatus(api.SetTaskStatusRequest) returns (api.SetTaskStatusResponse);
     */
    setTaskStatus(input: SetTaskStatusRequest, options?: RpcOptions): UnaryCall<SetTaskStatusRequest, SetTaskStatusResponse> {
        const method = this.methods[3], opt = this._transport.mergeOptions(options);
        return stackIntercept<SetTaskStatusRequest, SetTaskStatusResponse>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: SetTaskExecutedAt(api.SetTaskExecutedAtRequest) returns (api.SetTaskExecutedAtResponse);
     */
    setTaskExecutedAt(input: SetTaskExecutedAtRequest, options?: RpcOptions): UnaryCall<SetTaskExecutedAtRequest, SetTaskExecutedAtResponse> {
        const method = this.methods[4], opt = this._transport.mergeOptions(options);
        return stackIntercept<SetTaskExecutedAtRequest, SetTaskExecutedAtResponse>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: SetTaskNextRunAt(api.SetTaskNextRunAtRequest) returns (api.SetTaskNextRunAtResponse);
     */
    setTaskNextRunAt(input: SetTaskNextRunAtRequest, options?: RpcOptions): UnaryCall<SetTaskNextRunAtRequest, SetTaskNextRunAtResponse> {
        const method = this.methods[5], opt = this._transport.mergeOptions(options);
        return stackIntercept<SetTaskNextRunAtRequest, SetTaskNextRunAtResponse>("unary", this._transport, method, opt, input);
    }
}
