import type { schémaFonctionSuivi, schémaFonctionOublier, PasNondéfini, élémentsBd } from "./types.js"; import type { Journal } from "./types.js"; export declare const obtenir: (f: (args: { si: (f: (x: T) => boolean) => (x: T) => void; siDéfini: () => (x: T | undefined) => void; siVide: () => (x: T) => void; siNul: () => (x: T) => void; siPasVide: () => (x: T) => void; siPasNul: () => (x: T) => void; tous: () => (x: T) => void; }) => Promise) => Promise; export declare const suivreFonctionImbriquée: ({ fRacine, f, fSuivre, journal, }: { fRacine: (args: { fSuivreRacine: (nouvelIdImbriqué?: string) => Promise; }) => Promise; f: schémaFonctionSuivi; fSuivre: (args: { id: string; fSuivre: schémaFonctionSuivi; }) => Promise; journal?: Journal; }) => Promise; export declare const uneFois: (f: (fSuivi: schémaFonctionSuivi) => Promise, condition?: (x?: T) => boolean | Promise) => Promise; export declare const faisRien: () => Promise; export declare const ignorerNonDéfinis: (f: schémaFonctionSuivi) => schémaFonctionSuivi; export declare const attendreStabilité: (n: number) => ((v: T) => Promise); export declare const suivreDeFonctionListe: ({ fListe, f, fBranche, fIdDeBranche, fRéduction, journal, }: { fListe: (args: { fSuivreRacine: (éléments: T[]) => Promise; }) => Promise; f: schémaFonctionSuivi; fBranche: (args: { id: string; fSuivreBranche: schémaFonctionSuivi; branche: T; }) => Promise; fIdDeBranche?: (b: T) => string; fRéduction?: (branches: U[]) => V[]; journal?: Journal; }) => Promise; type NoUndefinedField = { [P in keyof T]-?: NoUndefinedField>; }; type élémentsBdOuNonDéfini = number | boolean | string | { [clef: string]: élémentsBdOuNonDéfini; } | Array<élémentsBd> | undefined; export declare const effacerPropriétésNonDéfinies: (objet: T) => NoUndefinedField; export {};