import { type Entity, Utils } from '@graphprotocol/hypergraph';
import type * as ParseResult from 'effect/ParseResult';
import * as Schema from 'effect/Schema';
export type FindOnePublicParams<S extends Schema.Schema.AnyNoContext, IncludeSpaceIds extends boolean | undefined = boolean | undefined> = {
    id: string;
    space: string;
    include?: Entity.EntityInclude<S> | undefined;
    includeSpaceIds?: IncludeSpaceIds;
    logInvalidResults?: boolean | undefined;
};
type RawEntity = Record<string, string | boolean | number | unknown[] | Date | string[]>;
type ParseResultResult<S extends Schema.Schema.AnyNoContext, IncludeSpaceIds extends boolean | undefined> = {
    entity: Entity.WithSpaceIds<Entity.Entity<S>, IncludeSpaceIds> | null;
    invalidEntity: {
        raw: RawEntity;
        error: ParseResult.ParseError;
    } | null;
    invalidRelationEntities: ReturnType<typeof Utils.convertRelations>['invalidRelations'];
};
export declare const findOnePublic: <S extends Schema.Schema.AnyNoContext, IncludeSpaceIds extends boolean | undefined = false>(type: S, params: FindOnePublicParams<S, IncludeSpaceIds>) => Promise<ParseResultResult<S, IncludeSpaceIds>>;
export {};
//# sourceMappingURL=find-one-public.d.ts.map