# Class PgTypeInfo

Namespace
  Npgsql.Internal

Assembly
  Npgsql.dll

    [Experimental("NPG9001")]
    public class PgTypeInfo

Inheritance
  object
  PgTypeInfo

Derived
  PgResolverTypeInfo

Inherited Members
  object.Equals(object)
  object.Equals(object, object)
  object.GetHashCode()
  object.GetType()
  object.MemberwiseClone()
  object.ReferenceEquals(object, object)
  object.ToString()

## Constructors

### PgTypeInfo(PgSerializerOptions, PgConverter, PgTypeId, Type?)

    public PgTypeInfo(PgSerializerOptions options, PgConverter converter, PgTypeId pgTypeId, Type? unboxedType = null)

#### Parameters

`options` PgSerializerOptions
`converter` PgConverter
`pgTypeId` PgTypeId
`unboxedType` Type

## Properties

### Options

    public PgSerializerOptions Options { get; }

#### Property Value

PgSerializerOptions

### PgTypeId

    public PgTypeId? PgTypeId { get; }

#### Property Value

PgTypeId?

### PreferredFormat

    public DataFormat? PreferredFormat { get; init; }

#### Property Value

DataFormat?

### SupportsReading

    public bool SupportsReading { get; init; }

#### Property Value

bool

### SupportsWriting

    public bool SupportsWriting { get; init; }

#### Property Value

bool

### Type

    public Type Type { get; }

#### Property Value

Type

## Methods

### GetBufferRequirements(PgConverter, DataFormat)

    public BufferRequirements? GetBufferRequirements(PgConverter converter, DataFormat format)

#### Parameters

`converter` PgConverter
`format` DataFormat

#### Returns

BufferRequirements?

### GetObjectResolution(object?)

    public PgConverterResolution GetObjectResolution(object? value)

#### Parameters

`value` object

#### Returns

PgConverterResolution

### GetResolution<T>(T?)

    public PgConverterResolution GetResolution<T>(T? value)

#### Parameters

`value` T

#### Returns

PgConverterResolution

#### Type Parameters

`T`