/**
 * -------------------------------------------------------------------------------------------
 * Copyright (c) Microsoft Corporation.  All Rights Reserved.  Licensed under the MIT License.
 * See License in the project root for license information.
 * -------------------------------------------------------------------------------------------
 */
import { type DateOnly, type Duration, type Guid, type ModelSerializerFunction, type Parsable, type SerializationWriter, type TimeOnly } from "@microsoft/kiota-abstractions";
export declare class TextSerializationWriter implements SerializationWriter {
    writeByteArrayValue(key?: string, value?: ArrayBuffer | null): void;
    private static readonly noStructuredDataMessage;
    private readonly writer;
    onBeforeObjectSerialization: ((value: Parsable) => void) | undefined;
    onAfterObjectSerialization: ((value: Parsable) => void) | undefined;
    onStartObjectSerialization: ((value: Parsable, writer: SerializationWriter) => void) | undefined;
    writeStringValue: (key?: string, value?: string | null) => void;
    writeBooleanValue: (key?: string, value?: boolean | null) => void;
    writeNumberValue: (key?: string, value?: number | null) => void;
    writeGuidValue: (key?: string, value?: Guid | null) => void;
    writeDateValue: (key?: string, value?: Date | null) => void;
    writeDateOnlyValue: (key?: string, value?: DateOnly | null) => void;
    writeTimeOnlyValue: (key?: string, value?: TimeOnly | null) => void;
    writeDurationValue: (key?: string, value?: Duration | null) => void;
    writeNullValue: (key?: string) => void;
    writeCollectionOfPrimitiveValues: <T>(key?: string, values?: T[] | null) => void;
    writeCollectionOfObjectValues: <T extends Parsable>(key?: string, values?: T[] | null, serializerMethod?: ModelSerializerFunction<T>) => void;
    writeObjectValue: <T extends Parsable>(key?: string, value?: T | null, serializerMethod?: ModelSerializerFunction<T>) => void;
    writeEnumValue: <T>(key?: string, ...values: (T | null | undefined)[]) => void;
    writeCollectionOfEnumValues: <T>(key?: string, values?: T[] | null) => void;
    getSerializedContent: () => ArrayBuffer;
    private readonly convertStringToArrayBuffer;
    writeAdditionalData: (value: Record<string, unknown> | undefined) => void;
}
//# sourceMappingURL=textSerializationWriter.d.ts.map