use conjure_http::endpoint;
/// This service provides internal APIs related to modules.
#[conjure_http::conjure_client(name = "InternalModuleService")]
pub trait InternalModuleService<
    #[response_body]
    I: Iterator<
            Item = Result<conjure_http::private::Bytes, conjure_http::private::Error>,
        >,
> {
    /// Returns the module definition for the given module reference.
    #[endpoint(
        method = POST,
        path = "/internal/scout/v2/module/unresolved-module/batch-get",
        name = "batchGetUnresolvedModuleDefinition",
        accept = conjure_http::client::StdResponseDeserializer
    )]
    fn batch_get_unresolved_module_definition(
        &self,
        #[auth]
        auth_: &conjure_object::BearerToken,
        #[body(serializer = conjure_http::client::StdRequestSerializer)]
        request: &super::super::super::super::objects::module::internal::BatchGetUnresolvedModuleDefinitionsRequest,
    ) -> Result<
        super::super::super::super::objects::module::internal::BatchGetUnresolvedModuleDefinitionsResponse,
        conjure_http::private::Error,
    >;
}
/// This service provides internal APIs related to modules.
#[conjure_http::conjure_client(name = "InternalModuleService")]
pub trait AsyncInternalModuleService<
    #[response_body]
    I: conjure_http::private::Stream<
            Item = Result<conjure_http::private::Bytes, conjure_http::private::Error>,
        >,
> {
    /// Returns the module definition for the given module reference.
    #[endpoint(
        method = POST,
        path = "/internal/scout/v2/module/unresolved-module/batch-get",
        name = "batchGetUnresolvedModuleDefinition",
        accept = conjure_http::client::StdResponseDeserializer
    )]
    async fn batch_get_unresolved_module_definition(
        &self,
        #[auth]
        auth_: &conjure_object::BearerToken,
        #[body(serializer = conjure_http::client::StdRequestSerializer)]
        request: &super::super::super::super::objects::module::internal::BatchGetUnresolvedModuleDefinitionsRequest,
    ) -> Result<
        super::super::super::super::objects::module::internal::BatchGetUnresolvedModuleDefinitionsResponse,
        conjure_http::private::Error,
    >;
}
/// This service provides internal APIs related to modules.
#[conjure_http::conjure_client(name = "InternalModuleService", local)]
pub trait LocalAsyncInternalModuleService<
    #[response_body]
    I: conjure_http::private::Stream<
            Item = Result<conjure_http::private::Bytes, conjure_http::private::Error>,
        >,
> {
    /// Returns the module definition for the given module reference.
    #[endpoint(
        method = POST,
        path = "/internal/scout/v2/module/unresolved-module/batch-get",
        name = "batchGetUnresolvedModuleDefinition",
        accept = conjure_http::client::StdResponseDeserializer
    )]
    async fn batch_get_unresolved_module_definition(
        &self,
        #[auth]
        auth_: &conjure_object::BearerToken,
        #[body(serializer = conjure_http::client::StdRequestSerializer)]
        request: &super::super::super::super::objects::module::internal::BatchGetUnresolvedModuleDefinitionsRequest,
    ) -> Result<
        super::super::super::super::objects::module::internal::BatchGetUnresolvedModuleDefinitionsResponse,
        conjure_http::private::Error,
    >;
}
