import { ServiceType } from '@protobuf-ts/runtime-rpc';
import type { BinaryWriteOptions } from '@protobuf-ts/runtime';
import type { IBinaryWriter } from '@protobuf-ts/runtime';
import type { BinaryReadOptions } from '@protobuf-ts/runtime';
import type { IBinaryReader } from '@protobuf-ts/runtime';
import type { PartialMessage } from '@protobuf-ts/runtime';
import { MessageType } from '@protobuf-ts/runtime';
import { ArchivedEvent } from './event.js';
import { CreatedEvent } from './event.js';
import { EventFormat } from './transaction_filter.js';
/**
 * @generated from protobuf message com.daml.ledger.api.v2.GetEventsByContractIdRequest
 */
export interface GetEventsByContractIdRequest {
    /**
     * The contract id being queried.
     * Required
     *
     * @generated from protobuf field: string contract_id = 1
     */
    contractId: string;
    /**
     * Provided for backwards compatibility, it will be removed in the Canton version 3.4.0.
     * The parties whose events the client expects to see.
     * The events associated with the contract id will only be returned if the requesting parties includes
     * at least one party that is a stakeholder of the event. For a definition of stakeholders see
     * https://docs.daml.com/concepts/ledger-model/ledger-privacy.html#contract-observers-and-stakeholders
     * Optional, if some parties specified, event_format needs to be unset.
     *
     * @deprecated
     * @generated from protobuf field: repeated string requesting_parties = 2 [deprecated = true]
     */
    requestingParties: string[];
    /**
     * Format of the events in the result, the presentation will be of TRANSACTION_SHAPE_ACS_DELTA.
     * Optional for backwards compatibility, defaults to an EventFormat where:
     *
     * - filters_by_party is a template-wildcard filter for all requesting_parties
     * - filters_for_any_party is unset
     * - verbose is set
     *
     * @generated from protobuf field: com.daml.ledger.api.v2.EventFormat event_format = 3
     */
    eventFormat?: EventFormat;
}
/**
 * @generated from protobuf message com.daml.ledger.api.v2.GetEventsByContractIdResponse
 */
export interface GetEventsByContractIdResponse {
    /**
     * The create event for the contract with the ``contract_id`` given in the request
     * provided it exists and has not yet been pruned.
     * Optional
     *
     * @generated from protobuf field: com.daml.ledger.api.v2.Created created = 1
     */
    created?: Created;
    /**
     * The archive event for the contract with the ``contract_id`` given in the request
     * provided such an archive event exists and it has not yet been pruned.
     * Optional
     *
     * @generated from protobuf field: com.daml.ledger.api.v2.Archived archived = 2
     */
    archived?: Archived;
}
/**
 * @generated from protobuf message com.daml.ledger.api.v2.Created
 */
export interface Created {
    /**
     * Required
     * The event as it appeared in the context of its original update (i.e. daml transaction or
     * reassignment) on this participant node. You can use its offset and node_id to find the
     * corresponding update and the node within it.
     *
     * @generated from protobuf field: com.daml.ledger.api.v2.CreatedEvent created_event = 1
     */
    createdEvent?: CreatedEvent;
    /**
     * The synchronizer which sequenced the creation of the contract
     * Required
     *
     * @generated from protobuf field: string synchronizer_id = 2
     */
    synchronizerId: string;
}
/**
 * @generated from protobuf message com.daml.ledger.api.v2.Archived
 */
export interface Archived {
    /**
     * Required
     *
     * @generated from protobuf field: com.daml.ledger.api.v2.ArchivedEvent archived_event = 1
     */
    archivedEvent?: ArchivedEvent;
    /**
     * Required
     * The synchronizer which sequenced the archival of the contract
     *
     * @generated from protobuf field: string synchronizer_id = 2
     */
    synchronizerId: string;
}
declare class GetEventsByContractIdRequest$Type extends MessageType<GetEventsByContractIdRequest> {
    constructor();
    create(value?: PartialMessage<GetEventsByContractIdRequest>): GetEventsByContractIdRequest;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: GetEventsByContractIdRequest): GetEventsByContractIdRequest;
    internalBinaryWrite(message: GetEventsByContractIdRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message com.daml.ledger.api.v2.GetEventsByContractIdRequest
 */
export declare const GetEventsByContractIdRequest: GetEventsByContractIdRequest$Type;
declare class GetEventsByContractIdResponse$Type extends MessageType<GetEventsByContractIdResponse> {
    constructor();
    create(value?: PartialMessage<GetEventsByContractIdResponse>): GetEventsByContractIdResponse;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: GetEventsByContractIdResponse): GetEventsByContractIdResponse;
    internalBinaryWrite(message: GetEventsByContractIdResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message com.daml.ledger.api.v2.GetEventsByContractIdResponse
 */
export declare const GetEventsByContractIdResponse: GetEventsByContractIdResponse$Type;
declare class Created$Type extends MessageType<Created> {
    constructor();
    create(value?: PartialMessage<Created>): Created;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Created): Created;
    internalBinaryWrite(message: Created, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message com.daml.ledger.api.v2.Created
 */
export declare const Created: Created$Type;
declare class Archived$Type extends MessageType<Archived> {
    constructor();
    create(value?: PartialMessage<Archived>): Archived;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Archived): Archived;
    internalBinaryWrite(message: Archived, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message com.daml.ledger.api.v2.Archived
 */
export declare const Archived: Archived$Type;
/**
 * @generated ServiceType for protobuf service com.daml.ledger.api.v2.EventQueryService
 */
export declare const EventQueryService: ServiceType;
export {};
//# sourceMappingURL=event_query_service.d.ts.map