// <auto-generated/>

#nullable disable

using System;
using System.ClientModel;
using System.ClientModel.Primitives;
using System.Diagnostics.CodeAnalysis;
using System.Threading;
using System.Threading.Tasks;

namespace _Type.Model.Inheritance.SingleDiscriminator
{
    public partial class SingleDiscriminatorClient
    {
        public SingleDiscriminatorClient() : this(new Uri("http://localhost:3000"), new SingleDiscriminatorClientOptions()) => throw null;

        internal SingleDiscriminatorClient(AuthenticationPolicy authenticationPolicy, Uri endpoint, SingleDiscriminatorClientOptions options) => throw null;

        public SingleDiscriminatorClient(Uri endpoint, SingleDiscriminatorClientOptions options) : this(null, endpoint, options) => throw null;

        [Experimental("SCME0002")]
        public SingleDiscriminatorClient(SingleDiscriminatorClientSettings settings) : this(AuthenticationPolicy.Create(settings), settings?.Endpoint, settings?.Options) => throw null;

        public ClientPipeline Pipeline => throw null;

        public virtual ClientResult GetModel(RequestOptions options) => throw null;

        public virtual Task<ClientResult> GetModelAsync(RequestOptions options) => throw null;

        public virtual ClientResult<Bird> GetModel(CancellationToken cancellationToken = default) => throw null;

        public virtual Task<ClientResult<Bird>> GetModelAsync(CancellationToken cancellationToken = default) => throw null;

        public virtual ClientResult PutModel(BinaryContent content, RequestOptions options = null) => throw null;

        public virtual Task<ClientResult> PutModelAsync(BinaryContent content, RequestOptions options = null) => throw null;

        public virtual ClientResult PutModel(Bird input, CancellationToken cancellationToken = default) => throw null;

        public virtual Task<ClientResult> PutModelAsync(Bird input, CancellationToken cancellationToken = default) => throw null;

        public virtual ClientResult GetRecursiveModel(RequestOptions options) => throw null;

        public virtual Task<ClientResult> GetRecursiveModelAsync(RequestOptions options) => throw null;

        public virtual ClientResult<Bird> GetRecursiveModel(CancellationToken cancellationToken = default) => throw null;

        public virtual Task<ClientResult<Bird>> GetRecursiveModelAsync(CancellationToken cancellationToken = default) => throw null;

        public virtual ClientResult PutRecursiveModel(BinaryContent content, RequestOptions options = null) => throw null;

        public virtual Task<ClientResult> PutRecursiveModelAsync(BinaryContent content, RequestOptions options = null) => throw null;

        public virtual ClientResult PutRecursiveModel(Bird input, CancellationToken cancellationToken = default) => throw null;

        public virtual Task<ClientResult> PutRecursiveModelAsync(Bird input, CancellationToken cancellationToken = default) => throw null;

        public virtual ClientResult GetMissingDiscriminator(RequestOptions options) => throw null;

        public virtual Task<ClientResult> GetMissingDiscriminatorAsync(RequestOptions options) => throw null;

        public virtual ClientResult<Bird> GetMissingDiscriminator(CancellationToken cancellationToken = default) => throw null;

        public virtual Task<ClientResult<Bird>> GetMissingDiscriminatorAsync(CancellationToken cancellationToken = default) => throw null;

        public virtual ClientResult GetWrongDiscriminator(RequestOptions options) => throw null;

        public virtual Task<ClientResult> GetWrongDiscriminatorAsync(RequestOptions options) => throw null;

        public virtual ClientResult<Bird> GetWrongDiscriminator(CancellationToken cancellationToken = default) => throw null;

        public virtual Task<ClientResult<Bird>> GetWrongDiscriminatorAsync(CancellationToken cancellationToken = default) => throw null;

        public virtual ClientResult GetLegacyModel(RequestOptions options) => throw null;

        public virtual Task<ClientResult> GetLegacyModelAsync(RequestOptions options) => throw null;

        public virtual ClientResult<Dinosaur> GetLegacyModel(CancellationToken cancellationToken = default) => throw null;

        public virtual Task<ClientResult<Dinosaur>> GetLegacyModelAsync(CancellationToken cancellationToken = default) => throw null;

        public virtual ClientResult GetNoSubtypesModel(RequestOptions options) => throw null;

        public virtual Task<ClientResult> GetNoSubtypesModelAsync(RequestOptions options) => throw null;

        public virtual ClientResult<Fish> GetNoSubtypesModel(CancellationToken cancellationToken = default) => throw null;

        public virtual Task<ClientResult<Fish>> GetNoSubtypesModelAsync(CancellationToken cancellationToken = default) => throw null;

        public virtual ClientResult PutNoSubtypesModel(BinaryContent content, RequestOptions options = null) => throw null;

        public virtual Task<ClientResult> PutNoSubtypesModelAsync(BinaryContent content, RequestOptions options = null) => throw null;

        public virtual ClientResult PutNoSubtypesModel(Fish input, CancellationToken cancellationToken = default) => throw null;

        public virtual Task<ClientResult> PutNoSubtypesModelAsync(Fish input, CancellationToken cancellationToken = default) => throw null;
    }
}
