/**
 * Based on IListInfo from node_modules\@pnp\sp\lists\types.d.ts
 */
import { IAnySecurableItem } from "./IAnySecurableItem";
/**
 * TypeCheckKeysAnyLibrary contains properties that are typically found on LISTS OR LIBRARIES
 */
export interface IAnyListLib extends IAnySecurableItem {
    Title?: string;
    Description?: string;
    BaseType?: any;
    BaseTemplate?: number;
    ServerRelativeUrl?: string;
    ParentWebUrl?: string;
    EntityTypeName?: string;
    /**
     *  BIG NOTE:  This is actually what is needed when creating an item if you need the "__metadata": { "type": "SP.Data.ProjectTasksListItem" }
     */
    ListItemEntityTypeFullName?: string;
    'RootFolder/ServerRelativeUrl'?: string;
    RootFolder?: {
        ServerRelativeUrl: string;
    };
    Hidden?: boolean;
    Id?: any;
    ID?: any;
    IsSystemList?: boolean;
    ItemCount?: number;
    NoCrawl?: boolean;
    EnableVersioning?: boolean;
    MajorVersionLimit?: number;
    OnQuickLaunch?: boolean;
    AllowContentTypes?: boolean;
    Created?: string;
    EnableFolderCreation?: boolean;
    LastItemDeletedDate?: string;
    LastItemModifiedDate?: string;
    LastItemUserModifiedDate?: string;
    ImageUrl?: string;
}
/**
 * TypeCheckKeysAnyLibrary contains properties that are typically unique on LISTS OR LIBRARIES
 * If the item has any values in ay of these keys, it is very likely a LIST OR LIBRARY
 *
 * DEPRECATED... USE:  MinIsAListSelects in src\components\molecules\SearchPage\functions\addListIsAMeta.ts
 */
/**
 * IAnyList contains properties that are typically found on LISTs
 */
export interface IAnyList extends IAnyListLib {
    EnableAttachments?: boolean;
}
/**
 * TypeCheckKeysAnyList contains properties that are typically unique to just LISTs
 * If the item has any values in ay of these keys, it is very likely a LIST
 *
 * FOR FETCH SELECTS, USE:  MinListSelects or MinIsAListSelects
 */
export declare const TypeCheckKeysAnyList: Array<keyof IAnyList>;
/**
 * IAnyLibrary contains properties that are typically found on LIBRARIES
 */
export interface IAnyLibrary extends IAnyListLib {
    EnableMinimalDownload?: boolean;
    DraftVersionVisibility?: any;
    ForceCheckout?: boolean;
    EnableMinorVersions?: boolean;
    MajorWithMinorVersionsLimit?: number;
    EnableModeration?: boolean;
    EnableRequestSignOff?: boolean;
    ListItemEntityTypeFullName?: string;
    ExemptFromBlockDownloadOfNonViewableFiles?: boolean;
}
/**
 * TypeCheckKeysAnyLibrary contains properties that are typically unique to just LIBRARIES
 * If the item has any values in ay of these keys, it is very likely a LIBRARY
 *
 * FOR FETCH SELECTS, USE:  MinListSelects or MinIsAListSelects
 */
export declare const TypeCheckKeysAnyLibrary: Array<keyof IAnyLibrary>;
//# sourceMappingURL=IAnyListLib.d.ts.map