/*!
 * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
 * Licensed under the MIT License.
 */
import { JsonCompatibleReadOnly } from "../util/index.js";
import { ICodecOptions, IJsonCodec } from "../codec/index.js";
import { ChangeEncodingContext, ChangeFamilyCodec, EncodedRevisionTag, RevisionTag } from "../core/index.js";
import { SchemaAndPolicy } from "../feature-libraries/index.js";
import { DecodedMessage } from "./messageTypes.js";
export interface MessageEncodingContext {
    schema?: SchemaAndPolicy;
}
export declare function makeMessageCodec<TChangeset>(changeCodec: ChangeFamilyCodec<TChangeset>, revisionTagCodec: IJsonCodec<RevisionTag, EncodedRevisionTag, EncodedRevisionTag, ChangeEncodingContext>, options: ICodecOptions): IJsonCodec<DecodedMessage<TChangeset>, JsonCompatibleReadOnly, JsonCompatibleReadOnly, MessageEncodingContext>;
//# sourceMappingURL=messageCodecs.d.ts.map