Skip to content

Latest commit

 

History

History
249 lines (210 loc) · 8 KB

File metadata and controls

249 lines (210 loc) · 8 KB

Alpha API Report File for "@fluidframework/container-loader"

Do not edit this file. It is a report generated by API Extractor.

// @alpha @legacy
export function asLegacyAlpha(base: IContainer): ContainerAlpha;

// @public
export enum ConnectionState {
    CatchingUp = 1,
    Connected = 2,
    Disconnected = 0,
    EstablishingConnection = 3
}

// @alpha @sealed @legacy
export interface ContainerAlpha extends IContainer {
    getPendingLocalState(): Promise<string>;
}

// @beta @legacy
export function createDetachedContainer(createDetachedContainerProps: ICreateDetachedContainerProps): Promise<IContainer>;

// @alpha @legacy
export function createFrozenDocumentServiceFactory(factory?: IDocumentServiceFactory | Promise<IDocumentServiceFactory>, readOnly?: boolean): IDocumentServiceFactory;

// @beta @legacy (undocumented)
export interface IBaseProtocolHandler {
    // (undocumented)
    readonly attributes: IDocumentAttributes;
    // (undocumented)
    close(): void;
    // (undocumented)
    getProtocolState(): IScribeProtocolState;
    // (undocumented)
    processMessage(message: ISequencedDocumentMessage, local: boolean): IProcessMessageResult;
    // (undocumented)
    readonly quorum: IQuorum;
    // (undocumented)
    setConnectionState(connected: boolean, clientId: string | undefined): any;
    // (undocumented)
    snapshot(): IQuorumSnapshot;
}

// @beta @deprecated @legacy (undocumented)
export interface ICodeDetailsLoader extends Partial<IProvideFluidCodeDetailsComparer> {
    load(source: IFluidCodeDetails): Promise<IFluidModuleWithDetails>;
}

// @beta @legacy
export interface ICreateAndLoadContainerProps {
    readonly allowReconnect?: boolean | undefined;
    readonly clientDetailsOverride?: IClientDetails | undefined;
    readonly codeLoader: ICodeDetailsLoader_2;
    readonly configProvider?: IConfigProviderBase | undefined;
    readonly documentServiceFactory: IDocumentServiceFactory;
    readonly logger?: ITelemetryBaseLogger | undefined;
    readonly options?: IContainerPolicies | undefined;
    readonly protocolHandlerBuilder?: ProtocolHandlerBuilder | undefined;
    readonly scope?: FluidObject | undefined;
    readonly urlResolver: IUrlResolver;
}

// @beta @legacy
export interface ICreateDetachedContainerProps extends ICreateAndLoadContainerProps {
    readonly codeDetails: IFluidCodeDetails;
}

// @beta @deprecated @legacy (undocumented)
export interface IFluidModuleWithDetails {
    details: IFluidCodeDetails;
    module: IFluidModule;
}

// @beta @legacy
export interface ILoaderProps {
    readonly codeLoader: ICodeDetailsLoader;
    readonly configProvider?: IConfigProviderBase;
    readonly documentServiceFactory: IDocumentServiceFactory;
    readonly logger?: ITelemetryBaseLogger;
    readonly options?: ILoaderOptions;
    readonly protocolHandlerBuilder?: ProtocolHandlerBuilder;
    readonly scope?: FluidObject;
    readonly urlResolver: IUrlResolver;
}

// @beta @legacy
export interface ILoaderServices {
    readonly codeLoader: ICodeDetailsLoader;
    readonly documentServiceFactory: IDocumentServiceFactory;
    readonly options: ILoaderOptions;
    readonly protocolHandlerBuilder?: ProtocolHandlerBuilder;
    readonly scope: FluidObject;
    readonly subLogger: ITelemetryLoggerExt;
    readonly urlResolver: IUrlResolver;
}

// @beta @legacy
export interface ILoadExistingContainerProps extends ICreateAndLoadContainerProps {
    readonly pendingLocalState?: string | undefined;
    readonly request: IRequest;
}

// @alpha @legacy
export interface ILoadFrozenContainerFromPendingStateProps extends ILoadExistingContainerProps {
    readonly pendingLocalState: string;
    readonly readOnly?: boolean;
}

// @alpha @legacy
export type ILoadSummarizerContainerProps = Omit<ILoadExistingContainerProps, "pendingLocalState">;

// @beta @legacy
export interface IParsedUrl {
    id: string;
    path: string;
    query: string;
    version: string | undefined;
}

// @beta @legacy (undocumented)
export interface IProtocolHandler extends IBaseProtocolHandler {
    // (undocumented)
    readonly audience: IAudienceOwner;
    // (undocumented)
    processSignal(message: ISignalMessage): any;
}

// @beta @legacy
export interface IQuorumSnapshot {
    // (undocumented)
    members: QuorumClientsSnapshot;
    // (undocumented)
    proposals: QuorumProposalsSnapshot["proposals"];
    // (undocumented)
    values: QuorumProposalsSnapshot["values"];
}

// @beta @legacy
export interface IRehydrateDetachedContainerProps extends ICreateAndLoadContainerProps {
    readonly serializedState: string;
}

// @beta @legacy (undocumented)
export interface IScribeProtocolState {
    // (undocumented)
    members: [string, ISequencedClient][];
    // (undocumented)
    minimumSequenceNumber: number;
    // (undocumented)
    proposals: [number, ISequencedProposal, string[]][];
    // (undocumented)
    sequenceNumber: number;
    // (undocumented)
    values: [string, ICommittedProposal][];
}

// @beta @legacy
export class Loader implements IHostLoader {
    constructor(loaderProps: ILoaderProps);
    // (undocumented)
    createDetachedContainer(codeDetails: IFluidCodeDetails, createDetachedProps?: {
        canReconnect?: boolean;
        clientDetailsOverride?: IClientDetails;
    }): Promise<IContainer>;
    // (undocumented)
    rehydrateDetachedContainerFromSnapshot(snapshot: string, createDetachedProps?: {
        canReconnect?: boolean;
        clientDetailsOverride?: IClientDetails;
    }): Promise<IContainer>;
    // (undocumented)
    resolve(request: IRequest, pendingLocalState?: string): Promise<IContainer>;
    // (undocumented)
    readonly services: ILoaderServices;
}

// @beta @legacy
export function loadExistingContainer(loadExistingContainerProps: ILoadExistingContainerProps): Promise<IContainer>;

// @alpha @legacy
export function loadFrozenContainerFromPendingState(props: ILoadFrozenContainerFromPendingStateProps): Promise<IContainer>;

// @alpha @legacy
export function loadSummarizerContainerAndMakeSummary(loadSummarizerContainerProps: ILoadSummarizerContainerProps): Promise<LoadSummarizerSummaryResult>;

// @alpha @legacy
export type LoadSummarizerSummaryResult = {
    readonly success: true;
    readonly summaryResults: OnDemandSummaryResults;
} | {
    readonly success: false;
    readonly error: IErrorBase;
};

// @alpha @legacy
export interface OnDemandSummaryResults {
    readonly summaryInfo: {
        readonly stage?: SummaryStage;
        readonly handle?: string;
    };
    readonly summaryOpBroadcasted: boolean;
    readonly summarySubmitted: boolean;
}

// @alpha @legacy
export class PendingLocalStateStore<TKey> {
    [Symbol.iterator](): Iterator<[TKey, string]>;
    clear(): void;
    delete(key: TKey): boolean;
    entries(): Iterator<[TKey, string]>;
    get(key: TKey): string | undefined;
    has(key: TKey): boolean;
    keys(): IterableIterator<TKey>;
    set(key: TKey, pendingLocalState: string): this;
    get size(): number;
}

// @beta @legacy
export type ProtocolHandlerBuilder = (attributes: IDocumentAttributes, snapshot: IQuorumSnapshot, sendProposal: (key: string, value: any) => number) => IProtocolHandler;

// @beta @legacy
export type QuorumClientsSnapshot = [string, ISequencedClient][];

// @beta @legacy
export type QuorumProposalsSnapshot = {
    proposals: [number, ISequencedProposal, string[]][];
    values: [string, ICommittedProposal][];
};

// @beta @legacy
export function rehydrateDetachedContainer(rehydrateDetachedContainerProps: IRehydrateDetachedContainerProps): Promise<IContainer>;

// @beta @legacy
export function resolveWithLocationRedirectionHandling<T>(api: (request: IRequest) => Promise<T>, request: IRequest, urlResolver: IUrlResolver, logger?: ITelemetryBaseLogger): Promise<T>;

// @alpha @legacy
export type SummaryStage = "base" | "generate" | "upload" | "submit" | "unknown";

// @beta @legacy
export function tryParseCompatibleResolvedUrl(url: string): IParsedUrl | undefined;

// @beta @legacy
export function waitContainerToCatchUp(container: IContainer): Promise<boolean>;

// (No @packageDocumentation comment for this package)