import _m0 from 'protobufjs/minimal';
export declare const protobufPackage = "yandex.cloud.mdb.postgresql.v1.config";
/**
 * Options and structure of `PostgresqlConfig` reflects PostgreSQL configuration file
 * parameters which detailed description is available in
 * [PostgreSQL documentation](https://www.postgresql.org/docs/17/runtime-config.html).
 */
export interface PostgresqlHostConfig17 {
    /** in milliseconds. */
    recoveryMinApplyDelay?: number;
    /** in bytes. */
    sharedBuffers?: number;
    /** in bytes. */
    tempBuffers?: number;
    /** in bytes. */
    workMem?: number;
    /** in bytes. */
    tempFileLimit?: number;
    backendFlushAfter?: number;
    /** in milliseconds. */
    maxStandbyStreamingDelay?: number;
    constraintExclusion: PostgresqlHostConfig17_ConstraintExclusion;
    cursorTupleFraction?: number;
    fromCollapseLimit?: number;
    joinCollapseLimit?: number;
    debugParallelQuery: PostgresqlHostConfig17_DebugParallelQuery;
    clientMinMessages: PostgresqlHostConfig17_LogLevel;
    logMinMessages: PostgresqlHostConfig17_LogLevel;
    logMinErrorStatement: PostgresqlHostConfig17_LogLevel;
    /** in milliseconds. */
    logMinDurationStatement?: number;
    logCheckpoints?: boolean;
    logConnections?: boolean;
    logDisconnections?: boolean;
    logDuration?: boolean;
    logErrorVerbosity: PostgresqlHostConfig17_LogErrorVerbosity;
    logLockWaits?: boolean;
    logStatement: PostgresqlHostConfig17_LogStatement;
    logTempFiles?: number;
    searchPath: string;
    rowSecurity?: boolean;
    defaultTransactionIsolation: PostgresqlHostConfig17_TransactionIsolation;
    /** in milliseconds. */
    statementTimeout?: number;
    /** in milliseconds. */
    lockTimeout?: number;
    /** in milliseconds. */
    idleInTransactionSessionTimeout?: number;
    byteaOutput: PostgresqlHostConfig17_ByteaOutput;
    xmlbinary: PostgresqlHostConfig17_XmlBinary;
    xmloption: PostgresqlHostConfig17_XmlOption;
    /** in bytes. */
    ginPendingListLimit?: number;
    /** in milliseconds. */
    deadlockTimeout?: number;
    maxLocksPerTransaction?: number;
    maxPredLocksPerTransaction?: number;
    arrayNulls?: boolean;
    backslashQuote: PostgresqlHostConfig17_BackslashQuote;
    defaultWithOids?: boolean;
    escapeStringWarning?: boolean;
    loCompatPrivileges?: boolean;
    quoteAllIdentifiers?: boolean;
    standardConformingStrings?: boolean;
    synchronizeSeqscans?: boolean;
    transformNullEquals?: boolean;
    exitOnError?: boolean;
    seqPageCost?: number;
    randomPageCost?: number;
    enableBitmapscan?: boolean;
    enableHashagg?: boolean;
    enableHashjoin?: boolean;
    enableIndexscan?: boolean;
    enableIndexonlyscan?: boolean;
    enableMaterial?: boolean;
    enableMergejoin?: boolean;
    enableNestloop?: boolean;
    enableSeqscan?: boolean;
    enableSort?: boolean;
    enableTidscan?: boolean;
    maxParallelWorkers?: number;
    maxParallelWorkersPerGather?: number;
    timezone: string;
    effectiveIoConcurrency?: number;
    effectiveCacheSize?: number;
}
export declare enum PostgresqlHostConfig17_BackslashQuote {
    BACKSLASH_QUOTE_UNSPECIFIED = 0,
    BACKSLASH_QUOTE = 1,
    BACKSLASH_QUOTE_ON = 2,
    BACKSLASH_QUOTE_OFF = 3,
    BACKSLASH_QUOTE_SAFE_ENCODING = 4,
    UNRECOGNIZED = -1
}
export declare function postgresqlHostConfig17_BackslashQuoteFromJSON(object: any): PostgresqlHostConfig17_BackslashQuote;
export declare function postgresqlHostConfig17_BackslashQuoteToJSON(object: PostgresqlHostConfig17_BackslashQuote): string;
export declare enum PostgresqlHostConfig17_ByteaOutput {
    BYTEA_OUTPUT_UNSPECIFIED = 0,
    BYTEA_OUTPUT_HEX = 1,
    BYTEA_OUTPUT_ESCAPED = 2,
    UNRECOGNIZED = -1
}
export declare function postgresqlHostConfig17_ByteaOutputFromJSON(object: any): PostgresqlHostConfig17_ByteaOutput;
export declare function postgresqlHostConfig17_ByteaOutputToJSON(object: PostgresqlHostConfig17_ByteaOutput): string;
export declare enum PostgresqlHostConfig17_ConstraintExclusion {
    CONSTRAINT_EXCLUSION_UNSPECIFIED = 0,
    CONSTRAINT_EXCLUSION_ON = 1,
    CONSTRAINT_EXCLUSION_OFF = 2,
    CONSTRAINT_EXCLUSION_PARTITION = 3,
    UNRECOGNIZED = -1
}
export declare function postgresqlHostConfig17_ConstraintExclusionFromJSON(object: any): PostgresqlHostConfig17_ConstraintExclusion;
export declare function postgresqlHostConfig17_ConstraintExclusionToJSON(object: PostgresqlHostConfig17_ConstraintExclusion): string;
export declare enum PostgresqlHostConfig17_DebugParallelQuery {
    DEBUG_PARALLEL_QUERY_UNSPECIFIED = 0,
    DEBUG_PARALLEL_QUERY_ON = 1,
    DEBUG_PARALLEL_QUERY_OFF = 2,
    DEBUG_PARALLEL_QUERY_REGRESS = 3,
    UNRECOGNIZED = -1
}
export declare function postgresqlHostConfig17_DebugParallelQueryFromJSON(object: any): PostgresqlHostConfig17_DebugParallelQuery;
export declare function postgresqlHostConfig17_DebugParallelQueryToJSON(object: PostgresqlHostConfig17_DebugParallelQuery): string;
export declare enum PostgresqlHostConfig17_ForceParallelMode {
    FORCE_PARALLEL_MODE_UNSPECIFIED = 0,
    FORCE_PARALLEL_MODE_ON = 1,
    FORCE_PARALLEL_MODE_OFF = 2,
    FORCE_PARALLEL_MODE_REGRESS = 3,
    UNRECOGNIZED = -1
}
export declare function postgresqlHostConfig17_ForceParallelModeFromJSON(object: any): PostgresqlHostConfig17_ForceParallelMode;
export declare function postgresqlHostConfig17_ForceParallelModeToJSON(object: PostgresqlHostConfig17_ForceParallelMode): string;
export declare enum PostgresqlHostConfig17_LogErrorVerbosity {
    LOG_ERROR_VERBOSITY_UNSPECIFIED = 0,
    LOG_ERROR_VERBOSITY_TERSE = 1,
    LOG_ERROR_VERBOSITY_DEFAULT = 2,
    LOG_ERROR_VERBOSITY_VERBOSE = 3,
    UNRECOGNIZED = -1
}
export declare function postgresqlHostConfig17_LogErrorVerbosityFromJSON(object: any): PostgresqlHostConfig17_LogErrorVerbosity;
export declare function postgresqlHostConfig17_LogErrorVerbosityToJSON(object: PostgresqlHostConfig17_LogErrorVerbosity): string;
export declare enum PostgresqlHostConfig17_LogLevel {
    LOG_LEVEL_UNSPECIFIED = 0,
    LOG_LEVEL_DEBUG5 = 1,
    LOG_LEVEL_DEBUG4 = 2,
    LOG_LEVEL_DEBUG3 = 3,
    LOG_LEVEL_DEBUG2 = 4,
    LOG_LEVEL_DEBUG1 = 5,
    LOG_LEVEL_INFO = 12,
    LOG_LEVEL_LOG = 6,
    LOG_LEVEL_NOTICE = 7,
    LOG_LEVEL_WARNING = 8,
    LOG_LEVEL_ERROR = 9,
    LOG_LEVEL_FATAL = 10,
    LOG_LEVEL_PANIC = 11,
    UNRECOGNIZED = -1
}
export declare function postgresqlHostConfig17_LogLevelFromJSON(object: any): PostgresqlHostConfig17_LogLevel;
export declare function postgresqlHostConfig17_LogLevelToJSON(object: PostgresqlHostConfig17_LogLevel): string;
export declare enum PostgresqlHostConfig17_LogStatement {
    LOG_STATEMENT_UNSPECIFIED = 0,
    LOG_STATEMENT_NONE = 1,
    LOG_STATEMENT_DDL = 2,
    LOG_STATEMENT_MOD = 3,
    LOG_STATEMENT_ALL = 4,
    UNRECOGNIZED = -1
}
export declare function postgresqlHostConfig17_LogStatementFromJSON(object: any): PostgresqlHostConfig17_LogStatement;
export declare function postgresqlHostConfig17_LogStatementToJSON(object: PostgresqlHostConfig17_LogStatement): string;
export declare enum PostgresqlHostConfig17_TransactionIsolation {
    TRANSACTION_ISOLATION_UNSPECIFIED = 0,
    TRANSACTION_ISOLATION_READ_UNCOMMITTED = 1,
    TRANSACTION_ISOLATION_READ_COMMITTED = 2,
    TRANSACTION_ISOLATION_REPEATABLE_READ = 3,
    TRANSACTION_ISOLATION_SERIALIZABLE = 4,
    UNRECOGNIZED = -1
}
export declare function postgresqlHostConfig17_TransactionIsolationFromJSON(object: any): PostgresqlHostConfig17_TransactionIsolation;
export declare function postgresqlHostConfig17_TransactionIsolationToJSON(object: PostgresqlHostConfig17_TransactionIsolation): string;
export declare enum PostgresqlHostConfig17_XmlBinary {
    XML_BINARY_UNSPECIFIED = 0,
    XML_BINARY_BASE64 = 1,
    XML_BINARY_HEX = 2,
    UNRECOGNIZED = -1
}
export declare function postgresqlHostConfig17_XmlBinaryFromJSON(object: any): PostgresqlHostConfig17_XmlBinary;
export declare function postgresqlHostConfig17_XmlBinaryToJSON(object: PostgresqlHostConfig17_XmlBinary): string;
export declare enum PostgresqlHostConfig17_XmlOption {
    XML_OPTION_UNSPECIFIED = 0,
    XML_OPTION_DOCUMENT = 1,
    XML_OPTION_CONTENT = 2,
    UNRECOGNIZED = -1
}
export declare function postgresqlHostConfig17_XmlOptionFromJSON(object: any): PostgresqlHostConfig17_XmlOption;
export declare function postgresqlHostConfig17_XmlOptionToJSON(object: PostgresqlHostConfig17_XmlOption): string;
export declare const PostgresqlHostConfig17: {
    encode(message: PostgresqlHostConfig17, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): PostgresqlHostConfig17;
    fromJSON(object: any): PostgresqlHostConfig17;
    toJSON(message: PostgresqlHostConfig17): unknown;
    fromPartial<I extends {
        recoveryMinApplyDelay?: number | undefined;
        sharedBuffers?: number | undefined;
        tempBuffers?: number | undefined;
        workMem?: number | undefined;
        tempFileLimit?: number | undefined;
        backendFlushAfter?: number | undefined;
        maxStandbyStreamingDelay?: number | undefined;
        constraintExclusion?: PostgresqlHostConfig17_ConstraintExclusion | undefined;
        cursorTupleFraction?: number | undefined;
        fromCollapseLimit?: number | undefined;
        joinCollapseLimit?: number | undefined;
        debugParallelQuery?: PostgresqlHostConfig17_DebugParallelQuery | undefined;
        clientMinMessages?: PostgresqlHostConfig17_LogLevel | undefined;
        logMinMessages?: PostgresqlHostConfig17_LogLevel | undefined;
        logMinErrorStatement?: PostgresqlHostConfig17_LogLevel | undefined;
        logMinDurationStatement?: number | undefined;
        logCheckpoints?: boolean | undefined;
        logConnections?: boolean | undefined;
        logDisconnections?: boolean | undefined;
        logDuration?: boolean | undefined;
        logErrorVerbosity?: PostgresqlHostConfig17_LogErrorVerbosity | undefined;
        logLockWaits?: boolean | undefined;
        logStatement?: PostgresqlHostConfig17_LogStatement | undefined;
        logTempFiles?: number | undefined;
        searchPath?: string | undefined;
        rowSecurity?: boolean | undefined;
        defaultTransactionIsolation?: PostgresqlHostConfig17_TransactionIsolation | undefined;
        statementTimeout?: number | undefined;
        lockTimeout?: number | undefined;
        idleInTransactionSessionTimeout?: number | undefined;
        byteaOutput?: PostgresqlHostConfig17_ByteaOutput | undefined;
        xmlbinary?: PostgresqlHostConfig17_XmlBinary | undefined;
        xmloption?: PostgresqlHostConfig17_XmlOption | undefined;
        ginPendingListLimit?: number | undefined;
        deadlockTimeout?: number | undefined;
        maxLocksPerTransaction?: number | undefined;
        maxPredLocksPerTransaction?: number | undefined;
        arrayNulls?: boolean | undefined;
        backslashQuote?: PostgresqlHostConfig17_BackslashQuote | undefined;
        defaultWithOids?: boolean | undefined;
        escapeStringWarning?: boolean | undefined;
        loCompatPrivileges?: boolean | undefined;
        quoteAllIdentifiers?: boolean | undefined;
        standardConformingStrings?: boolean | undefined;
        synchronizeSeqscans?: boolean | undefined;
        transformNullEquals?: boolean | undefined;
        exitOnError?: boolean | undefined;
        seqPageCost?: number | undefined;
        randomPageCost?: number | undefined;
        enableBitmapscan?: boolean | undefined;
        enableHashagg?: boolean | undefined;
        enableHashjoin?: boolean | undefined;
        enableIndexscan?: boolean | undefined;
        enableIndexonlyscan?: boolean | undefined;
        enableMaterial?: boolean | undefined;
        enableMergejoin?: boolean | undefined;
        enableNestloop?: boolean | undefined;
        enableSeqscan?: boolean | undefined;
        enableSort?: boolean | undefined;
        enableTidscan?: boolean | undefined;
        maxParallelWorkers?: number | undefined;
        maxParallelWorkersPerGather?: number | undefined;
        timezone?: string | undefined;
        effectiveIoConcurrency?: number | undefined;
        effectiveCacheSize?: number | undefined;
    } & {
        recoveryMinApplyDelay?: number | undefined;
        sharedBuffers?: number | undefined;
        tempBuffers?: number | undefined;
        workMem?: number | undefined;
        tempFileLimit?: number | undefined;
        backendFlushAfter?: number | undefined;
        maxStandbyStreamingDelay?: number | undefined;
        constraintExclusion?: PostgresqlHostConfig17_ConstraintExclusion | undefined;
        cursorTupleFraction?: number | undefined;
        fromCollapseLimit?: number | undefined;
        joinCollapseLimit?: number | undefined;
        debugParallelQuery?: PostgresqlHostConfig17_DebugParallelQuery | undefined;
        clientMinMessages?: PostgresqlHostConfig17_LogLevel | undefined;
        logMinMessages?: PostgresqlHostConfig17_LogLevel | undefined;
        logMinErrorStatement?: PostgresqlHostConfig17_LogLevel | undefined;
        logMinDurationStatement?: number | undefined;
        logCheckpoints?: boolean | undefined;
        logConnections?: boolean | undefined;
        logDisconnections?: boolean | undefined;
        logDuration?: boolean | undefined;
        logErrorVerbosity?: PostgresqlHostConfig17_LogErrorVerbosity | undefined;
        logLockWaits?: boolean | undefined;
        logStatement?: PostgresqlHostConfig17_LogStatement | undefined;
        logTempFiles?: number | undefined;
        searchPath?: string | undefined;
        rowSecurity?: boolean | undefined;
        defaultTransactionIsolation?: PostgresqlHostConfig17_TransactionIsolation | undefined;
        statementTimeout?: number | undefined;
        lockTimeout?: number | undefined;
        idleInTransactionSessionTimeout?: number | undefined;
        byteaOutput?: PostgresqlHostConfig17_ByteaOutput | undefined;
        xmlbinary?: PostgresqlHostConfig17_XmlBinary | undefined;
        xmloption?: PostgresqlHostConfig17_XmlOption | undefined;
        ginPendingListLimit?: number | undefined;
        deadlockTimeout?: number | undefined;
        maxLocksPerTransaction?: number | undefined;
        maxPredLocksPerTransaction?: number | undefined;
        arrayNulls?: boolean | undefined;
        backslashQuote?: PostgresqlHostConfig17_BackslashQuote | undefined;
        defaultWithOids?: boolean | undefined;
        escapeStringWarning?: boolean | undefined;
        loCompatPrivileges?: boolean | undefined;
        quoteAllIdentifiers?: boolean | undefined;
        standardConformingStrings?: boolean | undefined;
        synchronizeSeqscans?: boolean | undefined;
        transformNullEquals?: boolean | undefined;
        exitOnError?: boolean | undefined;
        seqPageCost?: number | undefined;
        randomPageCost?: number | undefined;
        enableBitmapscan?: boolean | undefined;
        enableHashagg?: boolean | undefined;
        enableHashjoin?: boolean | undefined;
        enableIndexscan?: boolean | undefined;
        enableIndexonlyscan?: boolean | undefined;
        enableMaterial?: boolean | undefined;
        enableMergejoin?: boolean | undefined;
        enableNestloop?: boolean | undefined;
        enableSeqscan?: boolean | undefined;
        enableSort?: boolean | undefined;
        enableTidscan?: boolean | undefined;
        maxParallelWorkers?: number | undefined;
        maxParallelWorkersPerGather?: number | undefined;
        timezone?: string | undefined;
        effectiveIoConcurrency?: number | undefined;
        effectiveCacheSize?: number | undefined;
    } & Record<Exclude<keyof I, keyof PostgresqlHostConfig17>, never>>(object: I): PostgresqlHostConfig17;
};
type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;
export type DeepPartial<T> = T extends Builtin ? T : T extends Array<infer U> ? Array<DeepPartial<U>> : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>> : T extends {} ? {
    [K in keyof T]?: DeepPartial<T[K]>;
} : Partial<T>;
type KeysOfUnion<T> = T extends T ? keyof T : never;
export type Exact<P, I extends P> = P extends Builtin ? P : P & {
    [K in keyof P]: Exact<P[K], I[K]>;
} & Record<Exclude<keyof I, KeysOfUnion<P>>, never>;
export {};
