import { RichTextField } from "../types/value/richText.cjs";

//#region src/helpers/asText.d.ts
/** Configuration that determines the output of `asText()`. */
type AsTextConfig = {
  /**
   * Separator used to join each element.
   *
   * @defaultValue ` ` (a space)
   */
  separator?: string;
};
/** @deprecated Use object-style configuration instead. */
type AsTextDeprecatedTupleConfig = [separator?: string];
/** The return type of `asText()`. */
type AsTextReturnType<Field extends RichTextField | null | undefined> = Field extends RichTextField ? string : null;
declare const asText: {
  /**
   * Converts a rich text field to a plain text string.
   *
   * @example
   * 	;```ts
   * 	const text = asText(document.data.content)
   * 	// => "Hello world"
   * 	```
   *
   * @param richTextField - A rich text field from Prismic.
   * @param config - Configuration that determines the output of `asText()`.
   * @returns Plain text equivalent of the rich text field, or `null` if the
   * field is empty.
   * @see Learn how to work with rich text fields: {@link https://prismic.io/docs/fields/rich-text}
   */
  <Field extends RichTextField | null | undefined>(richTextField: Field, config?: AsTextConfig): AsTextReturnType<Field>;
  /**
   * Converts a rich text field to a plain text string.
   *
   * @deprecated Use object-style configuration instead.
   * @param richTextField - A rich text field from Prismic.
   * @param separator - Separator used to join each element. Defaults to a space.
   * @returns Plain text equivalent of the rich text field, or `null` if the
   * field is empty.
   * @see Learn how to work with rich text fields: {@link https://prismic.io/docs/fields/rich-text}
   */
  <Field extends RichTextField | null | undefined>(richTextField: Field, ...config: AsTextDeprecatedTupleConfig): AsTextReturnType<Field>;
};
//#endregion
export { asText };
//# sourceMappingURL=asText.d.cts.map