import { FileMetadata } from "./common.js";
import { legalEntry } from "./generated/legal.entry.js";
import { DeclaredLocales, LocalesValues } from "@intlayer/types/module_augmentation";

//#region src/legal.d.ts
type LegalKey = keyof typeof legalEntry;
type Legals = Record<LegalKey, Record<LocalesValues, Promise<string>>>;
type LegalMetadata = FileMetadata;
declare const getLegalsKeys: () => (keyof typeof legalEntry)[];
declare const getLegals: <L extends LocalesValues = DeclaredLocales>(locale?: L) => Promise<Record<LegalKey, string>>;
declare const getLegal: <L extends LocalesValues = DeclaredLocales>(docName: keyof typeof legalEntry, locale?: L) => Promise<string>;
declare const getLegalMetadataRecord: <L extends LocalesValues = DeclaredLocales>(locale?: L) => Promise<Record<LegalKey, FileMetadata>>;
declare const getLegalMetadata: <D extends LegalKey, L extends LocalesValues = DeclaredLocales>(docName: D, locale?: L) => Promise<FileMetadata>;
declare const getLegalMetadataBySlug: <L extends LocalesValues = DeclaredLocales>(slugs: string | string[], locale?: L, strict?: boolean) => Promise<FileMetadata[]>;
declare const getLegalBySlug: <L extends LocalesValues = DeclaredLocales>(slugs: string | string[], locale?: L, strict?: boolean) => Promise<string[]>;
//#endregion
export { LegalKey, LegalMetadata, Legals, getLegal, getLegalBySlug, getLegalMetadata, getLegalMetadataBySlug, getLegalMetadataRecord, getLegals, getLegalsKeys };
//# sourceMappingURL=legal.d.ts.map