#import <Foundation/Foundation.h>
#import <QuickLook/QuickLook.h>
#if USE(APPLE_INTERNAL_SDK)
#import <QuickLook/QuickLookPrivate.h>
#else
@interface QLPreviewConverter : NSObject
@end
@interface QLPreviewConverter ()
- (NSURLRequest *)safeRequestForRequest:(NSURLRequest *)request;
- (id)initWithConnection:(NSURLConnection *)connection delegate:(id)delegate response:(NSURLResponse *)response options:(NSDictionary *)options;
- (id)initWithData:(NSData *)data name:(NSString *)name uti:(NSString *)uti options:(NSDictionary *)options;
- (void)appendDataArray:(NSArray *)dataArray;
- (void)finishConverting;
- (void)finishedAppendingData;
@property (readonly, nonatomic) NSString *previewFileName;
@property (readonly, nonatomic) NSString *previewUTI;
@property (readonly, nonatomic) NSURLRequest *previewRequest;
@property (readonly, nonatomic) NSURLResponse *previewResponse;
@end
@class QLItem;
@protocol QLPreviewItemDataProvider <NSObject>
- (NSData *)provideDataForItem:(QLItem *)item;
@end
@interface QLItem : NSObject<QLPreviewItem>
- (instancetype)initWithDataProvider:(id<QLPreviewItemDataProvider>)data contentType:(NSString *)contentType previewTitle:(NSString *)previewTitle;
- (instancetype)initWithPreviewItemProvider:(NSItemProvider *)itemProvider contentType:(NSString *)contentType previewTitle:(NSString *)previewTitle fileSize:(NSNumber *)fileSize;
- (void)setPreviewItemProviderProgress:(NSNumber*)progress;
- (void)setUseLoadingTimeout:(BOOL) timeout;
@end
#define kQLReturnPasswordProtected 1 << 2
#endif
static_assert(kQLReturnPasswordProtected == 4, "kQLReturnPasswordProtected should equal 4.");
WTF_EXTERN_C_BEGIN
NSSet *QLPreviewGetSupportedMIMETypes();
NSString *QLTypeCopyBestMimeTypeForFileNameAndMimeType(NSString *fileName, NSString *mimeType);
NSString *QLTypeCopyBestMimeTypeForURLAndMimeType(NSURL *, NSString *mimeType);
NSString *QLTypeCopyUTIForURLAndMimeType(NSURL *, NSString *mimeType);
WTF_EXTERN_C_END