import type * as grpc from '@grpc/grpc-js';
import type { MessageTypeDefinition } from '@grpc/proto-loader';

import type { IronPdfServiceClient as _ironpdfengineproto_IronPdfServiceClient, IronPdfServiceDefinition as _ironpdfengineproto_IronPdfServiceDefinition } from './ironpdfengineproto/IronPdfService';

type SubtypeConstructor<Constructor extends new (...args: any) => any, Subtype> = {
  new(...args: ConstructorParameters<Constructor>): Subtype;
};

export interface ProtoGrpcType {
  google: {
    protobuf: {
      Timestamp: MessageTypeDefinition
    }
  }
  ironpdfengineproto: {
    BooleanResultP: MessageTypeDefinition
    BytesResultStreamP: MessageTypeDefinition
    ChromeAddHtmlHeaderFooterRequestP: MessageTypeDefinition
    ChromeApplyCookiesRequestP: MessageTypeDefinition
    ChromeApplyStampRequestStreamP: MessageTypeDefinition
    ChromeBarcodeEncodingP: MessageTypeDefinition
    ChromeBarcodeStamperInfoP: MessageTypeDefinition
    ChromeCefBrowserSettingsP: MessageTypeDefinition
    ChromeCefRenderSettingsP: MessageTypeDefinition
    ChromeClearCookiesRequestP: MessageTypeDefinition
    ChromeFitToPaperModesP: MessageTypeDefinition
    ChromeHtmlHeaderFooterP: MessageTypeDefinition
    ChromeHtmlStamperInfoP: MessageTypeDefinition
    ChromeHttpLoginCredentialsP: MessageTypeDefinition
    ChromeImageBehaviorP: MessageTypeDefinition
    ChromeImageFilesToPdfRequestStreamP: MessageTypeDefinition
    ChromeImageStamperInfoP: MessageTypeDefinition
    ChromeImageToPdfRequestStreamP: MessageTypeDefinition
    ChromePdfCssMediaTypeP: MessageTypeDefinition
    ChromePdfPaperOrientationP: MessageTypeDefinition
    ChromePdfPaperSizeP: MessageTypeDefinition
    ChromePdfRenderOptionsP: MessageTypeDefinition
    ChromeRenderMeasureHtmlRequestStreamP: MessageTypeDefinition
    ChromeRenderPdfDocumentFromHtmlRequestStreamP: MessageTypeDefinition
    ChromeRenderPdfDocumentFromRtfStringRequestStreamP: MessageTypeDefinition
    ChromeRenderPdfDocumentFromUriRequestP: MessageTypeDefinition
    ChromeRenderPdfDocumentFromZipFileRequestStreamP: MessageTypeDefinition
    ChromeTableOfContentsTypesP: MessageTypeDefinition
    ChromeTextHeaderFooterP: MessageTypeDefinition
    ChromeTextStamperInfoP: MessageTypeDefinition
    ChromeUseMarginsP: MessageTypeDefinition
    EmptyP: MessageTypeDefinition
    EmptyResultP: MessageTypeDefinition
    FontTypeP: MessageTypeDefinition
    HandshakeRequestP: MessageTypeDefinition
    HandshakeResponseP: MessageTypeDefinition
    HorizontalAlignmentP: MessageTypeDefinition
    ImageResultStreamP: MessageTypeDefinition
    ImagesResultStreamP: MessageTypeDefinition
    IntListResultP: MessageTypeDefinition
    IntResultP: MessageTypeDefinition
    IronPdfService: SubtypeConstructor<typeof grpc.Client, _ironpdfengineproto_IronPdfServiceClient> & { service: _ironpdfengineproto_IronPdfServiceDefinition }
    LengthP: MessageTypeDefinition
    ListIntP: MessageTypeDefinition
    ListStringP: MessageTypeDefinition
    ListStringResultP: MessageTypeDefinition
    MeasurementUnitP: MessageTypeDefinition
    PdfBookmarkCollectionP: MessageTypeDefinition
    PdfDocumentP: MessageTypeDefinition
    PdfDocumentResultP: MessageTypeDefinition
    PdfiumAddBackgroundForegroundRequestP: MessageTypeDefinition
    PdfiumAddFontViaByteArrayRequestStreamP: MessageTypeDefinition
    PdfiumAddFontViaByteArrayResultP: MessageTypeDefinition
    PdfiumAddFontViaStandardFontEnumValRequestP: MessageTypeDefinition
    PdfiumAddFontViaStandardFontEnumValResultP: MessageTypeDefinition
    PdfiumAddFontViaStandardFontNameRequestP: MessageTypeDefinition
    PdfiumAddFontViaStandardFontNameResultP: MessageTypeDefinition
    PdfiumAddFormFieldAnnotationRequestP: MessageTypeDefinition
    PdfiumAddFormFieldRequestP: MessageTypeDefinition
    PdfiumAddLinkAnnotationRequestP: MessageTypeDefinition
    PdfiumAddPageRequestP: MessageTypeDefinition
    PdfiumAddPageResultP: MessageTypeDefinition
    PdfiumAddPdfAttachmentRequestP: MessageTypeDefinition
    PdfiumAddPdfAttachmentResultP: MessageTypeDefinition
    PdfiumAddSignatureImageRequestStreamP: MessageTypeDefinition
    PdfiumAddTextAnnotationRequestP: MessageTypeDefinition
    PdfiumAddTextHeaderFooterRequestP: MessageTypeDefinition
    PdfiumAnnotationIconP: MessageTypeDefinition
    PdfiumAnnotationSubTypesP: MessageTypeDefinition
    PdfiumBookmarkDescriptorCollectionP: MessageTypeDefinition
    PdfiumBookmarkDescriptorP: MessageTypeDefinition
    PdfiumBookmarkP: MessageTypeDefinition
    PdfiumCharObjectCollectionP: MessageTypeDefinition
    PdfiumCharObjectP: MessageTypeDefinition
    PdfiumCheckBoxFieldP: MessageTypeDefinition
    PdfiumComboBoxFieldP: MessageTypeDefinition
    PdfiumComboboxOptionsP: MessageTypeDefinition
    PdfiumCompressImagesRequestP: MessageTypeDefinition
    PdfiumConvertToPdfARequestStreamP: MessageTypeDefinition
    PdfiumConvertToPdfUAForScreenReaderRequestP: MessageTypeDefinition
    PdfiumConvertToPdfUARequestP: MessageTypeDefinition
    PdfiumCopyPagesRequestP: MessageTypeDefinition
    PdfiumDrawBitmapRequestStreamP: MessageTypeDefinition
    PdfiumDrawTextRequestP: MessageTypeDefinition
    PdfiumEditTextAnnotationRequestP: MessageTypeDefinition
    PdfiumEmbedFileToPdfARequestStreamP: MessageTypeDefinition
    PdfiumEmbedFontViaByteArrayRequestStreamP: MessageTypeDefinition
    PdfiumEmbedFontViaByteArrayResultP: MessageTypeDefinition
    PdfiumExtendPageRequestP: MessageTypeDefinition
    PdfiumExtractAllImagesRequestP: MessageTypeDefinition
    PdfiumExtractAllRawImagesRequestP: MessageTypeDefinition
    PdfiumExtractAllTextRequestP: MessageTypeDefinition
    PdfiumFindFontsRequestP: MessageTypeDefinition
    PdfiumFindFontsResultP: MessageTypeDefinition
    PdfiumFlattenFormRequestP: MessageTypeDefinition
    PdfiumFontInfoCollectionP: MessageTypeDefinition
    PdfiumFontInfoP: MessageTypeDefinition
    PdfiumFormFieldCollectionP: MessageTypeDefinition
    PdfiumFormFieldP: MessageTypeDefinition
    PdfiumGetAnnotationCountRequestP: MessageTypeDefinition
    PdfiumGetAnnotationRequestP: MessageTypeDefinition
    PdfiumGetAnnotationsRequestP: MessageTypeDefinition
    PdfiumGetAnnotationsResultP: MessageTypeDefinition
    PdfiumGetBinaryDataRequestStreamP: MessageTypeDefinition
    PdfiumGetBookmarksDescriptorRequestP: MessageTypeDefinition
    PdfiumGetBookmarksDescriptorResultP: MessageTypeDefinition
    PdfiumGetCharObjectCollectionRequestP: MessageTypeDefinition
    PdfiumGetCharObjectCollectionResultP: MessageTypeDefinition
    PdfiumGetComboboxOptionsRequestP: MessageTypeDefinition
    PdfiumGetComboboxOptionsResultP: MessageTypeDefinition
    PdfiumGetComboboxSelectedIndexRequestP: MessageTypeDefinition
    PdfiumGetComboboxSelectedIndexResultP: MessageTypeDefinition
    PdfiumGetFontInfoAtRequestP: MessageTypeDefinition
    PdfiumGetFontInfoAtResultP: MessageTypeDefinition
    PdfiumGetFontInfoCollectionRequestP: MessageTypeDefinition
    PdfiumGetFontInfoCollectionResultP: MessageTypeDefinition
    PdfiumGetFormFieldIsReadOnlyRequestP: MessageTypeDefinition
    PdfiumGetFormFieldIsReadOnlyResultP: MessageTypeDefinition
    PdfiumGetFormFieldValueRequestP: MessageTypeDefinition
    PdfiumGetFormFieldValueResultP: MessageTypeDefinition
    PdfiumGetFormFieldsRequestP: MessageTypeDefinition
    PdfiumGetFormFieldsResultP: MessageTypeDefinition
    PdfiumGetFormRequestP: MessageTypeDefinition
    PdfiumGetFormResultP: MessageTypeDefinition
    PdfiumGetImageObjectCollectionRequestP: MessageTypeDefinition
    PdfiumGetImageObjectCollectionResultP: MessageTypeDefinition
    PdfiumGetMetadataDictRequestP: MessageTypeDefinition
    PdfiumGetMetadataKeysRequestP: MessageTypeDefinition
    PdfiumGetMetadataRequestP: MessageTypeDefinition
    PdfiumGetPageBoundsRequestP: MessageTypeDefinition
    PdfiumGetPageCountRequestP: MessageTypeDefinition
    PdfiumGetPageCountResultP: MessageTypeDefinition
    PdfiumGetPageRequestP: MessageTypeDefinition
    PdfiumGetPageResultP: MessageTypeDefinition
    PdfiumGetPagesRequestP: MessageTypeDefinition
    PdfiumGetPagesResultP: MessageTypeDefinition
    PdfiumGetPaperSizePresetRequestP: MessageTypeDefinition
    PdfiumGetPaperSizePresetResultP: MessageTypeDefinition
    PdfiumGetPathObjectCollectionRequestP: MessageTypeDefinition
    PdfiumGetPathObjectCollectionResultP: MessageTypeDefinition
    PdfiumGetPdfAttachmentCountRequestP: MessageTypeDefinition
    PdfiumGetPdfAttachmentCountResultP: MessageTypeDefinition
    PdfiumGetPdfAttachmentDataRequestP: MessageTypeDefinition
    PdfiumGetPdfAttachmentDataResultStreamP: MessageTypeDefinition
    PdfiumGetPdfAttachmentNameRequestP: MessageTypeDefinition
    PdfiumGetPdfAttachmentNameResultP: MessageTypeDefinition
    PdfiumGetPdfSecuritySettingsRequestP: MessageTypeDefinition
    PdfiumGetPdfSecuritySettingsResultP: MessageTypeDefinition
    PdfiumGetRevisionRequestP: MessageTypeDefinition
    PdfiumGetSignatureByteRangeRequestP: MessageTypeDefinition
    PdfiumGetSignatureCountRequestP: MessageTypeDefinition
    PdfiumGetSignatureCountResultP: MessageTypeDefinition
    PdfiumGetStandardFontNameRequestP: MessageTypeDefinition
    PdfiumGetStandardFontNameResultP: MessageTypeDefinition
    PdfiumGetTextAnnotationResultP: MessageTypeDefinition
    PdfiumGetTextObjectCollectionRequestP: MessageTypeDefinition
    PdfiumGetTextObjectCollectionResultP: MessageTypeDefinition
    PdfiumGetVerifiedSignatureRequestStreamP: MessageTypeDefinition
    PdfiumGetVerifySignatureResultP: MessageTypeDefinition
    PdfiumIDocumentObjectP: MessageTypeDefinition
    PdfiumIFormFieldAnnotationObjectP: MessageTypeDefinition
    PdfiumIFormFieldAnnotationP: MessageTypeDefinition
    PdfiumIFormFieldObjectP: MessageTypeDefinition
    PdfiumIFormFieldP: MessageTypeDefinition
    PdfiumImageFieldP: MessageTypeDefinition
    PdfiumImageObjectCollectionP: MessageTypeDefinition
    PdfiumImageObjectP: MessageTypeDefinition
    PdfiumInsertBookmarkRequestP: MessageTypeDefinition
    PdfiumLayerModesP: MessageTypeDefinition
    PdfiumMergePageObjectsAppendRequestP: MessageTypeDefinition
    PdfiumMergePageObjectsPrependRequestP: MessageTypeDefinition
    PdfiumMetadataDictP: MessageTypeDefinition
    PdfiumMetadataDictResultP: MessageTypeDefinition
    PdfiumMetadataFieldP: MessageTypeDefinition
    PdfiumMetadataFieldResultP: MessageTypeDefinition
    PdfiumOpenNewDocumentRequestP: MessageTypeDefinition
    PdfiumPageBoundsP: MessageTypeDefinition
    PdfiumPageBoundsPResultP: MessageTypeDefinition
    PdfiumPageCollectionP: MessageTypeDefinition
    PdfiumPageP: MessageTypeDefinition
    PdfiumPageRotationP: MessageTypeDefinition
    PdfiumPagenateDocumentRequestP: MessageTypeDefinition
    PdfiumPaperSizePresetP: MessageTypeDefinition
    PdfiumPathObjectCollectionP: MessageTypeDefinition
    PdfiumPathObjectP: MessageTypeDefinition
    PdfiumPathSegmentObjectP: MessageTypeDefinition
    PdfiumPdfAnnotationCollectionP: MessageTypeDefinition
    PdfiumPdfAnnotationFlagsP: MessageTypeDefinition
    PdfiumPdfAnnotationP: MessageTypeDefinition
    PdfiumPdfAttachmentCollectionP: MessageTypeDefinition
    PdfiumPdfDocumentConstructorStreamP: MessageTypeDefinition
    PdfiumPdfDocumentInsertRequestP: MessageTypeDefinition
    PdfiumPdfDocumentMergeRequestP: MessageTypeDefinition
    PdfiumPdfDocumentPermissionsP: MessageTypeDefinition
    PdfiumPdfEditSecurityP: MessageTypeDefinition
    PdfiumPdfFormFieldFlagsP: MessageTypeDefinition
    PdfiumPdfFormFieldTypeP: MessageTypeDefinition
    PdfiumPdfFormP: MessageTypeDefinition
    PdfiumPdfFreeTextAnnotationP: MessageTypeDefinition
    PdfiumPdfLinkAnnotationP: MessageTypeDefinition
    PdfiumPdfPrintSecurityP: MessageTypeDefinition
    PdfiumPdfSecuritySettingsP: MessageTypeDefinition
    PdfiumPdfSignatureCollectionP: MessageTypeDefinition
    PdfiumPdfSignatureP: MessageTypeDefinition
    PdfiumPdfTextAnnotationP: MessageTypeDefinition
    PdfiumPdfToImagesRequestP: MessageTypeDefinition
    PdfiumPdfToMultiPageTiffImageRequestP: MessageTypeDefinition
    PdfiumPixelFormatP: MessageTypeDefinition
    PdfiumRadioFieldP: MessageTypeDefinition
    PdfiumRawSignatureChunkWithIndexP: MessageTypeDefinition
    PdfiumRedactRegionsRequestP: MessageTypeDefinition
    PdfiumRedactTextRequestP: MessageTypeDefinition
    PdfiumRemoveAnnotationRequestP: MessageTypeDefinition
    PdfiumRemoveBookmarksRequestP: MessageTypeDefinition
    PdfiumRemoveFormFieldAnnotationRequestP: MessageTypeDefinition
    PdfiumRemoveFormFieldRequestP: MessageTypeDefinition
    PdfiumRemoveMetadataRequestP: MessageTypeDefinition
    PdfiumRemovePagesRequestP: MessageTypeDefinition
    PdfiumRemovePagesResultP: MessageTypeDefinition
    PdfiumRemovePasswordsAndEncryptionRequestP: MessageTypeDefinition
    PdfiumRemovePdfAttachmentRequestP: MessageTypeDefinition
    PdfiumRemoveSignaturesRequestP: MessageTypeDefinition
    PdfiumRemoveStructTreeRequestP: MessageTypeDefinition
    PdfiumRenameFieldRequestP: MessageTypeDefinition
    PdfiumRenameFormFieldResultP: MessageTypeDefinition
    PdfiumReplaceFontViaByteArrayRequestStreamP: MessageTypeDefinition
    PdfiumReplaceFontViaByteArrayResultP: MessageTypeDefinition
    PdfiumReplaceFontViaStandardFontEnumValRequestP: MessageTypeDefinition
    PdfiumReplaceFontViaStandardFontEnumValResultP: MessageTypeDefinition
    PdfiumReplaceFontViaStandardFontNameRequestP: MessageTypeDefinition
    PdfiumReplaceFontViaStandardFontNameResultP: MessageTypeDefinition
    PdfiumReplaceTextRequestP: MessageTypeDefinition
    PdfiumResizePageRequestP: MessageTypeDefinition
    PdfiumResolveStandardFontNameRequestP: MessageTypeDefinition
    PdfiumResolveStandardFontNameResultP: MessageTypeDefinition
    PdfiumSetFormFieldFontRequestP: MessageTypeDefinition
    PdfiumSetFormFieldIsReadOnlyRequestP: MessageTypeDefinition
    PdfiumSetFormFieldValue2RequestP: MessageTypeDefinition
    PdfiumSetFormFieldValueRequestP: MessageTypeDefinition
    PdfiumSetMetadataDictRequestP: MessageTypeDefinition
    PdfiumSetMetadataRequestP: MessageTypeDefinition
    PdfiumSetPagesRotationRequestP: MessageTypeDefinition
    PdfiumSetPdfAttachmentDataRequestStreamP: MessageTypeDefinition
    PdfiumSetPdfSecuritySettingsRequestP: MessageTypeDefinition
    PdfiumSignRequestStreamP: MessageTypeDefinition
    PdfiumSignResultP: MessageTypeDefinition
    PdfiumSignatureFieldP: MessageTypeDefinition
    PdfiumSignaturePermissionsP: MessageTypeDefinition
    PdfiumStampBackgroundWatermarkRequestStreamP: MessageTypeDefinition
    PdfiumStampFooterWatermarkRequestStreamP: MessageTypeDefinition
    PdfiumTextAnnotationP: MessageTypeDefinition
    PdfiumTextFieldP: MessageTypeDefinition
    PdfiumTextObjectCollectionP: MessageTypeDefinition
    PdfiumTextObjectP: MessageTypeDefinition
    PdfiumTransformPageRequestP: MessageTypeDefinition
    PdfiumUnEmbedFontViaObjNumRequestP: MessageTypeDefinition
    PdfiumUnEmbedFontViaObjNumResultP: MessageTypeDefinition
    PdfiumUnEmbedFontViaRegexFontNameRequestP: MessageTypeDefinition
    PdfiumUnEmbedFontViaRegexFontNameResultP: MessageTypeDefinition
    PdfiumUnknownFieldP: MessageTypeDefinition
    PdfiumUpdateFormFieldAnnotationRequestP: MessageTypeDefinition
    PdfiumUpdateFormFieldRequestP: MessageTypeDefinition
    PdfiumVerifiedSignatureCollectionP: MessageTypeDefinition
    PdfiumVerifiedSignatureP: MessageTypeDefinition
    PdfiumWrappedPdfAnnotationP: MessageTypeDefinition
    RawImageChunkWithIndexAndFileTypeP: MessageTypeDefinition
    RawImageChunkWithIndexP: MessageTypeDefinition
    Rectangle: MessageTypeDefinition
    RemoteExceptionP: MessageTypeDefinition
    RenderOptionWaitForP: MessageTypeDefinition
    RisksP: MessageTypeDefinition
    SanitizeWithSvgRequestP: MessageTypeDefinition
    ScanPdfRequestP: MessageTypeDefinition
    ScanPdfRequestStreamP: MessageTypeDefinition
    ScanResultP: MessageTypeDefinition
    SizeP: MessageTypeDefinition
    SizeResultP: MessageTypeDefinition
    StringDictionaryEntryP: MessageTypeDefinition
    StringDictionaryP: MessageTypeDefinition
    StringDictionaryResultP: MessageTypeDefinition
    StringResultP: MessageTypeDefinition
    SystemIsLicensedRequestP: MessageTypeDefinition
    SystemIsValidLicenseRequestP: MessageTypeDefinition
    SystemSetIsDebugRequestP: MessageTypeDefinition
    SystemSetLicenseKeyRequestP: MessageTypeDefinition
    TextFileChunkWithIndexP: MessageTypeDefinition
    VerticalAlignmentP: MessageTypeDefinition
  }
}

